0

标题说明了一切。如果我使用来自非 SSL 网站的 API,我是否知道我会收到来自浏览器的混合内容错误?也就是说,这种情况下的混合内容错误是相关标准要求浏览器做什么的吗?

4

1 回答 1

1

是的,您将收到混合内容错误。任何不安全的上下文请求/响应都是混合内容

如果请求的 url 未经过先验身份验证,则请求是混合内容,并且负责加载它的上下文要求禁止混合安全上下文。

如果响应是未经身份验证的响应,则响应是混合内容,并且负责加载它的上下文要求禁止混合安全上下文。

负责加载它所需的上下文和上下文禁止混合安全上下文只是意味着请求上下文是安全上下文——基本上,一个具有https来源的文档。

另请参阅MDN混合内容文章的活动内容示例部分

  • <script>src属性)
  • <link>href属性)(这包括 CSS 样式表)
  • <iframe>src属性)
  • XMLHttpRequest要求
  • CSS 中使用 url 值的所有情况(@font-facecursorbackground-image等)。
  • <object>data属性)

请注意,该列表包括XMLHttpRequest请求。(它应该更新为也包括fetch()请求)。

另请参阅https://developers.google.com/web/fundamentals/security/prevent-mixed-content/what-is-mixed-content#an_xmlhttprequest_example上的示例

于 2017-03-08T01:56:03.420 回答