4

我在向 play 框架发布 POST 时遇到问题——这可能与 Play 相关的程度不如 HTTP 相关。

$.ajax({
    type:'POST',
    url:'http://localhost:9000/start',
    data: {
        myJson:JSON.stringify(arg)
    }
}).done(function(data) {
    console.log(data);
});

其中arg是一个字符串数组,即: ['a', 'b', 'c']

我试图用来捕捉这一点的路线是:

POST    /start      controllers.Application.startIt(myJson)

我究竟做错了什么?截至目前(如果路由正确捕获),该函数将永远不会返回 400。Play 控制台没有输出,只有 javascript:

POST http://localhost:9000/start 400 (Bad Request)

4

1 回答 1

2

该文档解释了框架何时返回 BadRequest 错误代码。问题来自您的路由器文件。您定义了一个路由/start,它将触发一个方法调用startIt,但是该方法有一个参数并且框架不知道它应该传递哪个值。

要正确处理 JSON 请求,请查看文档的专用部分

于 2012-11-05T17:18:51.430 回答