在我正在构建本地测试应用程序时,允许应用程序通过http和https发出请求很方便。但是,Chrome对此并不满意,也不会允许不安全的请求完成。如何说服Chrome在我正在测试的应用程序中混合使用不安全和安全的XHR请求?
答案 0 :(得分:3)
问题:如果您尝试运行包含安全和不安全请求的Web应用程序,Google默认会抱怨。
解决方案:启动Chrome或Chromium实例,并提供允许混合安全和不安全请求的选项。
OS X:/Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome --allow-running-insecure-content
MS:start Chrome --allow-running-insecure-content
现在,如果您已打开Chrome,则会在Chrome应用的现有实例中打开一个标签。然后,您将使用其他选项卡浮动一个不安全的选项卡。您可能会忘记该标签是不安全的,或者这可能在某些时候导致安全漏洞。因此,您可以通过在命令中添加一个选项来打开一个新的chrome实例,以便为您的用户信息使用新的临时目录,如下所示:
OS X:/Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome --user-data-dir=/tmp/tempchrome --allow-running-insecure-content
MS:start Chrome --user-data-dir=/tmp/tempchrome --allow-running-insecure-content
一些便利性补充: 每次想要运行安全和不安全内容的东西时发出这整个命令都会变得相当繁琐。我将此别名添加到我的〜/ .bash_profile中,以便在此混合模式下打开Chrome更方便:
OS X:alias chrome-insecure="/Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome --user-data-dir=/tmp/tempchrome --allow-running-insecure-content"
MS:a little help here?
我还有一个应用程序,我在本地反复测试,所以我添加了域名默认情况下打开时,我的无关的Chrome实例打开了如下:
OS X:alias chrome-insecure="/Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome localhost --user-data-dir=/tmp/tempchrome --allow-running-insecure-content"
MS:a little help here?