1

我正在尝试使用播放框架来实现一个 Web 应用程序,以替代与旧的非浏览器旧式 http 客户端连接的旧 http 服务器实现。

该客户端是用 Delphi 编写的,它直接在请求正文中发布数据,其中包含一些关于它的标头信息。

我以为我会得到一些东西

request.body /* In the play controller */

但什么都没有。

请看下面的代码:

public static void uploadPicture() {

        InputStream data = request.body;
    String fx = Play.getFile("").getAbsolutePath()+File.separator+"uploads"+File.separator+"test.jpg";
        File f = new File(fx);
        FileOutputStream moveTo = new FileOutputStream(fx);
        try {
                byte[] b = new byte[4096];
                for (int x = 0; (data.read(b)) != -1;){
                    moveTo.write(b, 0, x);
            }
        } finally{
            moveTo.close();
        }

    } 

编辑:为了澄清我的观点:我去了,我在 eclipseHttpServlet中创建了一个简单的动态 Web 项目,doPost()当我得到它时,request.getInputStream()它包含从旧客户端发送的文件。

播放是对请求体做些什么!?

我有哪些选择?

谢谢。

伊尔凡

4

1 回答 1

1

好的,这是 Play 1.2.4 中的一个错误。我安装了最新版本 1.2.5,一切正常。

request.body您可以在控制器中访问请求的原始正文。

于 2012-11-02T23:00:35.047 回答