【发布时间】:2014-06-06 05:12:55
【问题描述】:
我遇到了播放框架的问题,在内容类型标头中发送application/json 会返回BadRequest。
我有一个控制器 POST 方法,它需要一些标头供服务器计算正确的 hmac 值,其中一个标头是内容类型
当我将 application/json 作为 content-type 发送时,我收到了 Badrequest ,它适用于 application\/json ,但问题是我需要使用 application/json 来计算正确的 hmac 值。
我尝试过使用 Curl、Poster 和 Java 客户端,但我到处都面临同样的问题,我有一个用 Scala 编写的测试用例,它发送的应用程序/json 可以工作(但它是针对 MockController 和 FakeRequest 运行的) .
添加一些代码
这就是我添加内容类型标题httpPost.addHeader(HttpHeaders.CONTENT_TYPE, "\"application/json\""); 的方式
或者
httpPost.addHeader(HttpHeaders.CONTENT_TYPE, "application\/json");
两者中的任何一个都可以工作,但普通的 application/json 不能
这是我正在调用的控制器方法
def test() = Action {
implicit request =>
Ok("yippiie")
}
我还尝试了一个有效的 json body 和一个空的 json ,在两种情况下都得到了 BadRequest ,其中 application/json 作为内容类型标头。
【问题讨论】:
-
请出示您的代码
-
你的控制器函数返回了错误的请求,特别是......
-
控制器方法是一个普通的 POST 请求,被 Action{} 包围
标签: java json scala playframework-2.0 content-type