我安装了一个flask应用程序,运行flask-restless API,成功执行以下命令:
curl -H "Content-type: application/json" -X POST http://127.0.0.15000/api/menu -d '{"name":"Hello Data"}'但是当尝试用javascript做同样的事情时,它失败了。我已经追踪到flask-restless api中的问题代码行,并添加了一个打印request.data的调试语句,因为它依赖于此。
最接近工作的jquery查询是:
$.ajax({
url:'api/menu',
type:"POST",
contentType:"binary/octet-stream",
data:{name:'foo'}});其名称应为{‘request.data’:‘foo’},但其名称应为"name=foo“
我已经尝试了(contentType:“应用程序/json”,dataType:"json")对于内容类型应用程序/json,二进制/八位字节流,在所有其他情况下,数据都是空白的,而request.form有一个不可变的字典。
我是不是明显漏掉了什么?
发布于 2012-06-27 07:03:30
Oops -数据-没有以json的形式发送你必须这样做
$.ajax({
url:'http://localhost:5000/api/menu',
type:"POST",
contentType:"binary/octet-stream",
host:"localhost",
data:JSON.stringify({"name":"foo"})});注意JSON.stringify!
https://stackoverflow.com/questions/11216988
复制相似问题