应用程序实施SSL后,GET请求引发错误:混合内容:此请求已被阻止; 内容必须通过HTTPS提供"

Ter*_* Bu 6 ssl https http flask angularjs

混合内容:" https://www.example.com/dashboard "上的页面是通过HTTPS加载的,但是请求了一个不安全的XMLHttpRequest端点" http://api.example.com/inventory/10/ ".此请求已被阻止; 内容必须通过HTTPS提供.

我们有这个Angular Web应用程序,它与后端的Flask一起运行.在我们实施SSL之前,一切正常.之后,我们到处都会遇到这个奇怪的错误.

现在,我的dashboard.js中的$ http.get请求肯定在下面的代码中调用" https://api.example.com/inventory/10 ",但错误是声称我们正在尝试请求"http"代替.

$http.get($rootScope.baseUrl+'/inventory/' + item.id)
Run Code Online (Sandbox Code Playgroud)

其中rootScope.baseUrl是" https://api.example.com ".

这真的很奇怪,因为一些GET请求从我们的Web应用程序到我们的后端,但有些请求正在抛出这个奇怪的错误.

这是在chrome中控制台的Network选项卡中出现错误的标题.

请求URL:https://api.example.com/inventory/10请求头临时标题显示接受:应用/ JSON,纯文本/,/ 产地:https://www.example.com 的Referer:https://开头www.example.com/dashboard

Ter*_* Bu 2

这是一个奇怪的情况,归结为从 URL 末尾删除正斜杠修复了所有内容。不知何故,每当我们在 Angular 中使用 $http 发出 GET 请求(例如 baseurl + inventory.id + "/")时,它都会发出一个 http 请求,但只要删除该斜杠,它就会正确发出 https 请求。

还是那么迷茫