【问题标题】:allow mixed content coding Error允许混合内容编码错误
【发布时间】:2016-12-28 14:49:30
【问题描述】:

我正在从 HTTPs url 向 HTTP 发送一个请求。这样做我收到关于“允许混合内容”的错误。

我可以使用浏览器设置修复它,方法是单击 url 栏上的 Shield 图标并允许它。

有没有办法使用 HTML 或 Javascript 来解决这个问题,这样用户就不需要更改浏览器设置,并且它可以在不让用户知道的情况下工作。

【问题讨论】:

  • I am sending a request from HTTPs url to HTTP - 那是你的问题。如果您使用 HTTPS,则最好使用 HTTPS 进行第三方调用,否则您会收到错误消息。

标签: javascript html security https


【解决方案1】:
  • 对于您的域,您可以使用 HSTS 标头:

Strict-Transport-Security "max-age=31536000"

警告:它将阻止客户端的任何 http 请求。

http://caniuse.com/#feat=stricttransportsecurity

  • 对于您可以使用 upgrade-insecure-requests 的任何域:

内容安全策略:升级不安全请求

https://scotthelme.co.uk/migrating-from-http-to-https-ease-the-pain-with-csp-and-hsts/

http://caniuse.com/#feat=upgradeinsecurerequests

当然,这两种方法都要求资源可通过 https 获得。

在 https 网页中使用 http 资源是一个安全问题,浏览器阻止它是正常的。他们不能只是删除锁定图标并接受它:如果它是一个加载了 http 的脚本,它可能已经窃取了数据。

【讨论】:

    猜你喜欢
    • 2017-06-16
    • 2021-08-01
    • 2013-08-21
    • 2015-02-26
    • 1970-01-01
    • 2015-02-11
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多