使用MooTools在Request Body *中POST JSON *

时间:2011-12-27 22:39:48

标签: javascript json post mootools

我正在尝试在我的应用中的网址之间发布JSON。接收URL在请求正文中需要JSON,并在请求正文中使用JSON进行响应。问题是我似乎无法使用Mootools Request.JSON在正文中发送JSON。这就是我所拥有的:

// formObj is an object constructed from a form
var request = new Request.JSON({
    url: "/api/object.new",
    urlEncoded: false,
    onRequest: function(){
        // swap submit button with spinner
    },
    onComplete: function(jsonObj) {
        // work with returned JSON
    },
    body: JSON.encode(formObj)
});
request.setHeader("Content-Type", "application/json");
request.post();

服务器返回500错误:

BadValueError: Property name is required

这意味着request.name正在返回None,这意味着服务器没有获得我的JSON。

使用HTTPClient将JSON.encode(formObj)的输出粘贴到body字段中会产生所需的结果。

1 个答案:

答案 0 :(得分:1)

body不是Request的有效mootools属性。请改用data: blah。就目前而言,数据是空的,所以难怪你在服务器端什么也得不到......