为什么IE 11在解码时使用Windows-1252而不是UTF-8?

Why does IE 11 use Windows-1252 instead of UTF-8 when it's decoding?

我在头部设置了<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>

但是当IE 11发送API请求时,它会执行Windows-1252而不是UTF-8.

比如URL中包含ü,在UTF-8中应该是%C3%BC,但是IE 11会把它分解成%C3%BC,根据Windows-1252.

发送为ü

那么有什么办法可以解决这个问题吗?

我在 IE 11 中测试过。这个问题在 Edge 上不存在。

看看IE的编码设置,应该是没有设置成automatic(应该使用meta标签定义的编码),而是设置成windows-1252

请在此处查看更多详细信息和原因: https://support.microsoft.com/en-us/help/928847/internet-explorer-uses-the-wrong-character-set-when-it-renders-an-html