我正在尝试使用XMLHttpRequest和FormData API上传一个图像文件到我的G-WAN服务器,但我无法检索到文件contents.Here是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 PNGContent-type为multipart/form-data。有没有人设法将文件上传到G-WAN?我找不到一个例子。谢谢!
发布于 2012-10-18 23:32:41
我花了最后几个小时为G- write编写了一个名为entity.html的专用示例(一个带有[browse]按钮的表单,用于POST一个文件),它将调用entity.c servlet (它报告有关POST实体的所有内容,并列出它的前1000个字节)。
您的G-WAN版本3.3将遇到的第一件事是POST实体大小限制-并且您将得到HTTP错误413 (请求实体太大)。
我编写了一个名为entity_size.c的servlet示例来展示如何修改这个限制(这可以在处理程序或servlet中随时完成)。
您必须做的第二件事(使用G-WAN自动完成)是加载实体中尚未加载v3.10+请求的任何缺失部分(在v3.3中,这将需要一个处理程序处理返回代码以读取更多内容,直到所有内容都加载完毕)。
这两点是反复出现的问题(在现在已经不存在的论坛上),所以是时候举个例子了。
因此,除非您非常勇敢(并且愿意遵循上面的指示),否则您已经理解了等待本月晚些时候的v3.10可能会更好:它将为您完成工作,并且您将有几个经过测试的示例可供学习。
请注意,还可以调用entity.c来分析任何类型的请求,不仅是multipart/form-data编码,也不仅仅是POST请求(它还演示了PUT和DELETE)。
最后注意:我还修改了代码,以确保在servlet argc/argv main()中列出URI参数和POST/PUT实体。
这就允许像这样的事情:POST /?blog/user/1245/day/24,访问user=1245和day=24 (以及实体)所需的就是读取argv[]。
希望这能对你的项目有所帮助!
https://stackoverflow.com/questions/12952585
复制相似问题