flask 接收post请求 Request Paylod参数

今天写后端代码时 死活获取不到前端传过来的参数, 明明时post请求 为什么按照正常的方式拿不到参数呢

前端 vue
后端 flask

后端部分代码

@app.route('/planFile', methods=['POST'])
def downloadPlanData():
    planId = request.from.get('planId')  # 正常接受post请求参数的一种方式

原因如图
图一
注意上图中的 post请求参数传递方式 是Request Payload方式 所以使用 request.from.get('planId')去获取参数是获取不到的只有下图中的 Form Data的方式时才可以接收到参数
在这里插入图片描述

那么使用 Request Payload方式传递时到底怎么才能接收到参数呢

解决办法

两种方式

  1. 前端去解决(思路就是将Request Payload方式换成 Form Data的方式 怎末换能力有限这里不做解答)

  2. 后端去解决
    flask 中使用 request.json.get('planId') 可接收到参数

    @app.route('/planFile', methods=['POST'])
    def downloadPlanData():
        planId = request.json.get('planId')
    

总体原因就是 前后端传递与接受参数的方式不统一
解决思路就是去统一参数传递的方式

猜你喜欢

转载自blog.csdn.net/weixin_41822224/article/details/107632445