pythn Flash에서 POST를 받을 때 발리 Tips

7389 단어 PythonTipsalltech
이 글은 POST 요청을 python으로 받아들이고 가치 있는지 확인하는 기술을 짧게 적는 내용이다.노트로 쓸 정도.
또 POST 요청의 송수신 방법에 대한 해설은 없었다.
・python
・Flash

all 정보()


이번에python의 삽입 함수 all를 사용합니다.자세한 설명은 생략하고 매개변수의 모든 값이 True이면 가짜 함수를 반환합니다.
https://note.nkmk.me/python-all-any-usage/

실제 코드


if request.method == 'POST':

    # リクエストの値を変数に格納
    request_json = request.json
    
    # リクエストに必須の項目名をタプルに入れる(後でこれとリクエストを比較する)
    required = (
      'username',
      'email',
      'tel',
      'age'
    )
    
    # requiredがrequest_jsonに入っているか判定
    if not all(k in request_json for k in required):
      return jsonify({'message': 'missing value'}), 400
    
    # ユーザーを生成
    is_created = User.create_user(
      request_json['username'],
      request_json['email'],
      request_json['tel'],
      request_json['age'])
      
    # レスポンスを返す
    if not is_created:
      return jsonify({'message': 'fail'}), 400
    return jsonify({'message':'success'}), 201

all(k in request_json for k in required)


이번 주요 부분은 all(k in request json for k in requird) 부분입니다.
pythn의 all 함수에 대한 매개 변수 k in request -json for k in requird가 추가되었습니다.
중요한 건 k in requestjson for k in requird 섹션이 모두 True로 변경되면 False가 하나만 있어도 False로 응답합니다.
그럼,kin requestjson for k in requird에 관해서는 자세히 보겠습니다.

for k in required


이 부분은 누구나 볼 수 있는 일반적인 for문이다.
Required의 수치를 하나하나 k에 넣으세요.
원래는 아래와 같이 아래에서 k로 코드를 쓴다.
하나하나 required 내용을 꺼내면 어느 것이든 다 된다만약 json에 들어간 값이 없다면 400번을 되돌려줍니다.
for k in required:
    if k in request_json:
	 return jsonify({'message': 'missing value'}), 400
그러나python에서는 같은 줄에 for문장에서 전송된 값을 기록할 수 있습니다.

k for k in required


fork in requird처럼 기술하면 첫 번째 k에 for문이 건네준 k를 추가할 수 있습니다.
예를 들어 다음과 같이 aray에 배열이 있다.
array = [i for i in range(10)]
이번 상황에서 k리('usename','이메일','tel','age').
여기까진 한 발자국도 더 있어.

k in request_json for k in required


위 코드에서 in request -제이슨에 가입하다.
k "in request_json" for k in required
.
항상 넣는 위치가 이상하다고 생각하지만 kfork in requird에서 첫 번째 k는 for문으로 돌아간 k이기 때문에 첫 번째 k는 in request-제이슨 가입을 통해 판정할 수 있습니다.
k in request_json에 대해python의 in 사용 방법을 조사하십시오.request_단지 json에 k가 있는지 없는지를 판단할 뿐이다.
이번 상황에서 Required에 놓인 판정 기준을 하나하나 k에 넣고 실제 요구의 Request로제이슨에 들어갔는지 판단하는 중입니다.

all(k in request_json for k in required)


상술한 모든 것을 총결산한 후
  all(k in request_json for k in required)
, 1행은 필요항목을 판단할 수 있다.

좋은 웹페이지 즐겨찾기