我正在将rails 4.2.5.1
与rspec和capybara一起使用。我的一项测试给出了以下信息
2016-01-28 08:56:07.805 webkit_server[31376:18902667] App Transport Security has blocked a cleartext HTTP (http://) resource load since it is insecure. Temporary exceptions can be configured via your app's Info.plist file.
我认为原因已隔离到以下代码行
<audio id="bellAudio">
<source src="/assets/ion-sounds/bell_ring.mp3" type="audio/mp3" autobuffer="autobuffer" />
<source src="/assets/ion-sounds/bell_ring.ogg" type="audio/ogg" autobuffer="autobuffer"/>
</audio>
由以下咖啡脚本激活:
play_bell = ->
$("#bellAudio")[0].load();
$("#bellAudio")[0].play();
收到似乎是对本地服务器的访问的消息,这似乎很奇怪。如何防止此消息?如果答案是使用“向Info.plist添加一些内容”,该文件放在哪里?
最佳答案
我将mp3换成生成的mp3,但仍然收到了弃用消息,因此mp3并不是真正的安全问题。
我将webkit driver
更改为poltergeist
,并且测试成功,并且不再收到警告消息。所以我认为webkit
只是一个问题。 This post提出了强有力的论据以转向Poltergeist。
这就是我解决问题的方式,即我现在使用poltergeist作为Capybara的网络驱动程序。
关于ruby-on-rails - 如何停止RSpec/Capybara中的App Transport Security错误,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/35049009/