我们在嵌入式设备的Web服务器上有一个简单的HTML登录表单。由于内存限制严重,Web服务器是自定义编码的。尽管存在这些限制,我们喜欢Chrome并希望支持它。
所有浏览器都会向我们的登录表单发布HTTP请求,其中包含预期的“username=myname&password=mypass”字符串,但Chrome不会。相反,我们从Chrome收到了一个“Content-encoding gzip deflate”的请求。顺便说一下,“所有浏览器”是指已经测试过在Internet Explorer版本9 beta、8、7、6;Firefox版本4 beta、3、2;Opera 10、9;Safari 5、4、3;和SeaMonkey 2上运行良好。
参考w3.org的“14.2接受字符集”章节(http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html),我们尝试发送HTTP 406代码来指示此服务器不支持该编码,希望Chrome会再次尝试以标准方式发布预期的字符串。Web服务器返回的406代码在Chrome的“检查元素”窗口中清晰地显示,但似乎被Chrome视为错误代码,并且没有进一步的请求发送到Web服务器。“登录失败。”我们还尝试了HTTP返回代码405和200,结果相同。
是否有一种方法可以通过客户端JavaScript绕过此行为,以防止Chrome发送“Content-encoding gzip deflate”请求,或者使用服务器端响应来向Chrome解释我们不执行gzip,只需按常规方式将其发送给我们?
我们尝试在Google Chrome故障排除论坛上发布帖子,但没有得到回复。
非常感谢您的帮助!
最好的问候, Bert
所有浏览器都会向我们的登录表单发布HTTP请求,其中包含预期的“username=myname&password=mypass”字符串,但Chrome不会。相反,我们从Chrome收到了一个“Content-encoding gzip deflate”的请求。顺便说一下,“所有浏览器”是指已经测试过在Internet Explorer版本9 beta、8、7、6;Firefox版本4 beta、3、2;Opera 10、9;Safari 5、4、3;和SeaMonkey 2上运行良好。
参考w3.org的“14.2接受字符集”章节(http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html),我们尝试发送HTTP 406代码来指示此服务器不支持该编码,希望Chrome会再次尝试以标准方式发布预期的字符串。Web服务器返回的406代码在Chrome的“检查元素”窗口中清晰地显示,但似乎被Chrome视为错误代码,并且没有进一步的请求发送到Web服务器。“登录失败。”我们还尝试了HTTP返回代码405和200,结果相同。
是否有一种方法可以通过客户端JavaScript绕过此行为,以防止Chrome发送“Content-encoding gzip deflate”请求,或者使用服务器端响应来向Chrome解释我们不执行gzip,只需按常规方式将其发送给我们?
我们尝试在Google Chrome故障排除论坛上发布帖子,但没有得到回复。
非常感谢您的帮助!
最好的问候, Bert