私はAxiosとFlaskを使ってRESTful APIを開発しています。request.jsonは文字列を返します
しかし、AxiosとFlaskの間のJSONデータに問題があります。
AxiosからJSONデータをrequest.json
で取得できません。
私は多くの方法を試していますが、何も機能しません。
主に、request.json
はNone
を取得する、とrequest.data
が得られます:デバッグ後
b'------WebKitFormBoundaryNzW4jnyUkdEH3jsX\r\nContent-Disposition: form-data; name="user"\r\n\r\nu\r\n------WebKitFormBoundaryNzW4jnyUkdEH3jsX\r\nContent-Disposition: form-data; name="pwd"\r\n\r\np\r\n------WebKitFormBoundaryNzW4jnyUkdEH3jsX--\r\n'
、request.json
を今データを取得することができます。
json
ではなく、string
しか得られません。
Axios
var config = {headers: {'Content-Type': 'application/json'}}
axios.post('/api/user', {user: 'user', pwd: 'pwd'}, config)
.then(function(resp) {
// ...
})
.catch(function(error) {
// ...
});
フラスコ
@app.route('/api/user', methods=['POST'])
def user():
j = request.json
print(j)
print(type(j))
結果
{"user": "user", "pwd": "pwd"}
class 'str'
私はそれをどのように修正すればよい:ここで
は、コードのですか? ありがとうございます。
'get_json()'は機能しますか? –
いいえ、request.jsonと同じ – scaldstack
JSONの代わりにフォームデータを送信したようです。 –