[python] 플라스크에 HTTP 상태 코드 201 반환

우리는 API 중 하나에 Flask를 사용하고 있으며 HTTP 응답 201을 반환하는 방법을 아는 사람이 있는지 궁금합니다.

404와 같은 오류의 경우 다음을 호출 할 수 있습니다.

from flask import abort
abort(404)

하지만 201 년에는

LookupError : 201에 대한 예외 없음

내가 좋아하는 내 자신의 예외를 만들 필요가 있는가 워드 프로세서에?



답변

여기에서 읽을 수 있습니다 .

return render_template('page.html'), 201


답변

응답을 사용하여 http 상태 코드를 반환 할 수 있습니다.

> from flask import Response
> return Response("{'a':'b'}", status=201, mimetype='application/json')


답변

리턴 명령문에 제안 된 송신 상태 코드가없고 다음과 같은 변수에 저장하는 경우

notfound = 404
invalid = 403
ok = 200

그리고 사용

return xyz, notfound

시간보다 유형이 str이 아닌지 확인하십시오. 이 작은 문제에 직면했을 때 여기에도 전 세계적으로 따르는 상태 코드 목록이 있습니다.
http://www.w3.org/Protocols/HTTP/HTRESP.html

도움이 되길 바랍니다.


답변

넌 할 수있어

result = {'a': 'b'}
return jsonify(result), 201

오류 코드와 함께 응답에 JSON 데이터를 반환하려는 경우 make_response API 세부 정보에 대한 응답에 대한 여기여기 를 읽을 수 있습니다


답변

플라스크 코드에서 가능한 한 자주 MIME 유형을 지정하는 것이 이상적입니다.

return html_page_str, 200, {'ContentType':'text/html'}

return json.dumps({'success':True}), 200, {'ContentType':'application/json'}

…기타


답변

flask_api를 사용하여 응답을 보낼 수도 있습니다.

from flask_api import status

@app.route('/your-api/')
def empty_view(self):
    content = {'your content here'}
    return content, status.HTTP_201_CREATED

당신은 여기에 참조를 찾을 수 있습니다 http://www.flaskapi.org/api-guide/status-codes/


답변

API 작성 방법에 따라 일반적으로 201 (만들기)을 사용하여 작성된 자원을 리턴합니다. 예를 들어 사용자 계정을 만드는 경우 다음과 같은 작업을 수행합니다.

return {"data": {"username": "test","id":"fdsf345"}}, 201

접미사 번호는 반환 된 상태 코드입니다.

또는 다음과 같은 메시지를 클라이언트에 보낼 수 있습니다.

return {"msg": "Created Successfully"}, 201