在Server 2019上运行IIS 10的完整修补程序。我有以下.aspx网页代码:
For Each var As String In Request.ServerVariables
Response.Write(var &" "& Request(var))
Next
为什么Chrome浏览器愉快地显示它们,为什么Firefox故意(显然)忽略了 HTTP_SEC_FETCH _ 服务器标头?
Firefox 69.0.1输出:
...
HTTP_USER_AGENT Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:69.0) Gecko/20100101 Firefox/69.0
HTTP_UPGRADE_INSECURE_REQUESTS 1
Chrome 77.0.3865.90输出:
...
HTTP_USER_AGENT Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/77.0.3865.90 Safari/537.36
HTTP_UPGRADE_INSECURE_REQUESTS 1
HTTP_SEC_FETCH_MODE navigate
HTTP_SEC_FETCH_USER ?1
HTTP_SEC_FETCH_SITE none
这是 server 输出,为什么Firefox为什么忽略该数据?还是我不了解服务器变量的工作方式?上面的输出在列表的最后。
答案 0 :(得分:0)
事实证明,在遵循RFC和各种杂项方面,Chrome(再次)领先于Firefox。在这种情况下,每个https://www.w3.org/TR/fetch-metadata/都将其称为“获取元数据请求标头”,并由浏览器插入到获取请求中。现在我知道了。 (知道是成功的一半!)