我正在使用java 2.4,但我也在2.5中尝试过。 当发布的数据大小超过1024字节时,控制器不发送任何结果。 我尝试用curl发送不同大小的文件。 控制器可以读取所有数据,但在文件大小超过1024字节时不发送任何响应。
路线:
POST /message controllers.HomeController.rxmessage
HomeController.java:
public Result rxmessage() {
Logger.warn("rxmessage");
return ok("rxmessage ok\r\n");
}
我用curl测试它:
curl --header "Content-type: application/xml" --request POST -d @data.xml http://localhost:9000/message
当data.xml小于1024字节时:
~/Dev/Play/buffer-test$ curl --header "Content-type: application/xml" --request POST -d @data.xml http://localhost:9000/saetr
rxmessage ok
但是当data.xml超过1024字节时,curl正在等待永远不会到达的答案。
我尝试在application.conf中添加:
play.http.parser.maxMemoryBuffer = 256kB
parsers.Xml.maxLength=10240K
我尝试了BodyParser注释:
@BodyParser.Of(value = BodyParser.Xml.class, maxLength = 10 * 1024)
public Result rxmessage() {
Logger.warn("rxmessage");
return ok("rxmessage ok\r\n");
}
我做错了什么? 谢谢你的帮助。
答案 0 :(得分:0)
我在另一台计算机上试过它,它正在运行。 我尝试使用虚拟机中的curl,它也在运行。 所以问题似乎是卷曲,但我不能说为什么。怪异。