使用G-WAN上传文件

时间:2012-10-18 10:29:39

标签: image xmlhttprequest form-data g-wan

我尝试将带有XMLHttpRequest和FormData API的图像文件上传到我的G-WAN服务器,但我无法检索文件内容。这是h_entities中的输出:

-----------------------------75940917410019849751723987620 Content-Disposition: form-data; name="test_param" test_value 
-----------------------------75940917410019849751723987620 Content-Disposition: form-data; name="uploadedFile"; filename="test.png" Content-Type: image/png PNG

"内容类型"是multipart / form-data。有没有人设法将文件上传到G-WAN?我找不到一个例子。谢谢!

1 个答案:

答案 0 :(得分:0)

我花了最后几个小时为G-WAN v3.10 +写了一个名为entity.html的专用示例(一个带有[browse]按钮的表单,POST一个文件)调用entity.c servlet(报告有关POST实体的所有内容并列出其前1,000个字节)。

您的G-WAN版本3.3将首先命中的是POST实体大小限制 - 您将收到HTTP错误413(请求实体太大)。

我编写了一个名为entity_size.c的servlet示例来说明如何修改此限制(这可以在处理程序或servlet中完成,并且随时都可以。)

您必须做的第二件事(以及使用G-WAN v3.10 +自动完成)是加载尚未加载HTTP请求的实体的任何缺失部分(在v3.3中)这将需要处理器使用返回代码来读取更多内容,直到所有内容都加载完毕。

这两点是反复出现的问题(在现已解散的论坛上),所以是时候举一个例子了。

所以,除非你非常勇敢(并且愿意遵循上述指示),否则你已经明白,等待本月晚些时候发布的v3.10可能会更好:它会为你和你做好工作将有几个经过测试的例子可供学习。

请注意,还可以调用entity.c来分析任何类型的请求,而不仅仅是multipart/form-data个编码,而不仅仅是POST个请求(它还会演示PUT和{ {1}})。

最后一点:我还修改了代码,以确保在servlet DELETE中列出了URI参数和POST/PUT实体。

这允许以下内容:argc/argv main()您需要访问POST /?blog/user/1245/day/24user=1245(以及实体)才能阅读day=24

希望这对您的项目有所帮助!