Flaskはaxios postのデータを受信する


クライアントは、axiosを使用してサーバにパラメータを送信し、Flaskから返されたデータを受信します.
クライアントaxios:
 const path = 'api/g2dLayout'
 axios.post(path,{layout:'fr'})
     .then(res=>{
     console.log('getData:', res.data)
     this.addObj(res.data)
     }).catch(error=>{
     console.error('get error:', error)
 })

サーバFlask:
@app.route('/g2dLayout', methods=['GET', 'POST'])
def g2dLayout():
    if request.method == 'GET':
        graph = getL.read_json("static/data/miserables.json")
        return graph
    if request.method == 'POST':
        reqlyout = request.get_json()['layout']    #      ‘fr’
#       reqlyout = request.form.get('layout')    #   None
#       reqlyout = request.values.get('layout')    #   None
#       reqlyout = request.args.get('layout')    #   None
        print(reqlyout)
        graph = getL.response_layout("static/data/miserables.json", reqlyout)
        return graph

これまで正しいデータが得られず、ブログに基づいて答えを見つけました.https://blog.csdn.net/weixin_43705559/article/details/94737607
axiosはAjax伝値と異なるため,受信方式も異なる.Ajaxを用いる値を伝達する場合はrequestを用いることができる.form.get('layout')、またはrequest.form['layout']パラメータを取得します.