标记的副本确实显示了变通方法,但仍然没有回答@app.route('/data_names', methods=['POST'])
def data_names():
logger.debug('data names post: {}'.format(flask.request.json))
print('method: {}\n\nheaders: {}\n\ndata: {}'.format(flask.request.method, flask.request.headers, flask.request.data))
return_obj = {'my_response': 4}
return flask.jsonify(return_obj)
方法发送错误数据类型的原因!
我没有理由相信烧瓶应用程序写得不正确,但为了完整起见,我会在此处发布详细信息。
我有一个事件,我希望触发一个帖子请求并从一个烧瓶服务器接收响应。帖子请求如下:
$.post
当然,我此时发送和阅读的对象只是虚拟数据。
在我的烧瓶服务器上,我有一个只显示
的视图设置DEBUG:__main__:data names post: None
127.0.0.1 - - [06/Nov/2016 08:57:15] "POST /data_names HTTP/1.1" 200 150 0.004000
method: POST
headers: Host: 127.0.0.1:5000
Content-Type: application/x-www-form-urlencoded; charset=UTF-8
X-Requested-With: XMLHttpRequest
Referer: http://127.0.0.1:5000/analysis
User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/54.0.2840.71 Safari/537.36
Origin: http://127.0.0.1:5000
Content-Length: 30
Cookie: session=.eJwlzj0KwzAMQOG7aA7Flm1ZytSbBP_ItENIseOhlN69gY5v-OB9YGtdxwPWs09dYHtWWEGLeLKImkrwAQU5Wo_Ikg3Fq6OQJDY-sAmYChZi8eFSNUdHZGvmaKJgU_TGEqnWyzmXi2uVkjZjLTduhskl8dbXmENLEjE0x6HCAnNo_8-UOc5j136frzre41aOHb4_OpE0lg.CwDEmg.IqdOKaGiAGZwkkQzttLseUM2AxQ
Connection: keep-alive
Accept-Encoding: gzip, deflate, br
Accept-Language: en-US,en;q=0.8
Accept: application/json, text/javascript, */*; q=0.01
Dnt: 1
data: b''
对于'数据'在{my_response: 4}
的字段中,我尝试使用stringify和其他一些我认为可能有用的函数。在所有情况下,我的服务器都会将其打印到控制台:
application/json
此外,我的控制台将显示返回的application/x-www-form-urlencoded
这告诉我POST正在通过,但数据不是。在我看来,发布请求发送的数据类型应该是$.post()
而不是{{1}},但{{1}}的文档说它可以采用普通的JSON对象。 / p>
感谢您的协助,