1

我正在发出将图片上传到网站的 POST 请求。
在页面中,有一个FileUpload和一个input (textBox),在提琴手中我发现该页面正在使用 Multipart Post 请求模式发送一些数据(Content Disposition: multipart-formdata;)
一切似乎都很好,因为在提琴手中,关于我的应用程序发布的内容和页面的内容,一切都是一样的正在发送...只是与标题顺序无关...

我的问题是,以正确的顺序放置标题真的很重要吗?如果是,我该怎么做?(因为我们只是在请求中设置一些属性,所以没有设置顺序的地方......)

感谢您的任何建议...

4

3 回答 3

7

HTTP 标头的顺序对于具有不同名称的标头无关紧要。但是,如果有多个具有相同名称的标题,则顺序很重要。

参见RFC 2616

接收具有不同字段名称的标头字段的顺序并不重要。但是,“好习惯”是先发送通用头字段,然后是请求头或响应头字段,最后是实体头字段。

当且仅当该标题字段的整个字段值被定义为逗号分隔列表[即,#(values)] 时,具有相同字段名称的多个消息标题字段可能出现在消息中。必须可以将多个头字段组合成一个“字段名称:字段值”对,而不改变消息的语义,方法是将每个后续字段值附加到第一个字段值,每个字段值用逗号分隔。因此,接收具有相同字段名称的头字段的顺序对组合字段值的解释很重要,因此代理在转发消息时不得更改这些字段值的顺序。

于 2012-06-25T22:02:50.533 回答
5

如果您的订单有误,Akamai将阻止您。

$ curl -v -H "$UA" -H "$ACCEPT" -H "$ENCODING" $URL |& grep '< HTTP'
< HTTP/1.1 403 Forbidden
$ curl -v -H "$ACCEPT" -H "$UA" -H "$ENCODING" $URL |& grep '< HTTP'
< HTTP/1.1 301 Moved Permanently

They use the implicit ordering of specific clients to detect malicious user agents. See my blog the topic:

http://gwillem.gitlab.io/2017/05/02/http-header-order-is-important/

于 2017-05-02T09:20:09.693 回答
1

我对 Chrome 的 webRequest api 的经验,从来没有保证 http 标头的顺序。因此,在这方面,标题顺序无关紧要。

于 2012-06-25T22:01:27.677 回答