2

我使用下面的代码使用 NanoHTTPD 上传文件,但没有上传任何内容,也没有给我临时路径。

代码是:

new Response(
    HTTP_OK,
    MIME_HTML,
    "<html><body><form name='up' enctype='multipart/form-data'><input type='file' name='file' /><br /><input type='submit'name='submit' value='Upload'/></form></body></html>"
);

我成功获取上传页面,点击上传按钮后,我的网址也变为

http://IP_ADD:PORT/file?file=closed.png&submit=Upload

但是没有任何东西上传到我的手机。

你能帮助我吗?

4

2 回答 2

4

请记住,如果您使用的是 NanoHttpd,则在处理请求时需要将上传文件存储为临时文件。

服务器使用标准java.io.tmpdir来决定临时文件的去向。但在大多数手机上,系统将该变量指向 SD 卡。

因此,您可能希望将访问外部 SD 卡的权限添加到您的 Android 清单。

于 2013-05-22T20:46:28.957 回答
2

这是解决方案

new Response(HTTP_OK, MIME_HTML, "<html><body><form name='up' method='post' enctype='multipart/form-data'><input type='file' name='file' /><br /><input type='submit'name='submit' value='Upload'/></form></body></html>");

您只需添加method='post'表格即可。

于 2013-04-23T09:01:42.170 回答