我的开发人员正在尝试将图片发布到他的网络服务:
http://consec.dev.domain.com/Services/ActivityService.svc/SubmitImage?userId=8D428BF6-51F0-43F6-947D-7E19A6A7F4BD&fileName=feels-bad.png&fileContent=iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHElEQVQI12P4//8/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg==
这是一个base64编码的图像(这个图像恰好是一个红点,但我们将使用的图像要大得多)
当他试图发帖时,他得到了一个:
HTTP Error 414. The request URL is too long.
他告诉我它因为我的IIS配置错误。我告诉他它的代码。有人可以对此有所了解或指出我们开始寻找答案的方向吗?谢谢
答案 0 :(得分:2)
不要POST
网址中的数据,利用帖子正文并在那里提交。这是获得大量数据的唯一途径。
答案 1 :(得分:1)
查询字符串有限制,请参阅What is the maximum possible length of a query string?
您应该通过帖子数据在请求正文中传递文件内容。
答案 2 :(得分:0)
他的代码错了。这就是HTTP支持POST
请求的原因。
请注意,通过POST
请求,您仍然可以将数据放入网址中。要做一个正确的POST
,您需要创建一个网址来定义发布的位置,并将您想要的数据POST
放入请求的正文中。
GET示例:
GET /some/place.php?var1=value
POST示例:
POST /some/place.php
var1=value
但是,这样做是有效的:
POST /some/place.php?var1=value
var2=value2
(为了清楚起见,这些示例是剪切的,您必须在POST
中发送一些标题)
答案 3 :(得分:0)
首先是一个get而不是一个post http请求。其次,错误是网络服务器返回的。但这是不好的设计?它应该是一个表单按钮,使用post raher提交字段而不是构造可点击的get url