2016-05-24 79 views
0

我在我的Rails應用程序中添加了即時聊天(如Gmail聊天),我正在使用private_pub和faye。該應用似乎目前工作,但用戶刷新頁面後只能看到消息。我檢查了元素,它顯示faye.js被阻止。確切的錯誤是private_pub Faye.js被阻止

Mixed Content: The page at 'https://....' was loaded over HTTPS, but requested an insecure script 'http://localhost:9292/faye.js'. This request has been blocked; the content must be served over HTTPS. 

有沒有人exeperienced這樣的錯誤和/或任何想法如何解決此問題?查看附加圖片以獲取錯誤的截圖。 enter image description here

+0

你可以在application.html.erb中發佈你的JS部分嗎?看起來你的網站是用https生成的,但是這部分單獨通過http有明確的請求。 – coderhs

+0

@Coderhs這是application.html.erb的JS部分'<%= stylesheet_link_tag'application',media:'all','data-turbolinks-track'=> true%> <%= javascript_include_tag'application', 'https://js.stripe.com/v2/','data-turbolinks-track'=> true%> <%= csrf_meta_tags%> <%= tag:meta,name:「stripe-key」,內容:STRIPE_PUBLIC%>' – Alex

回答

0

這是一個瀏覽器行爲,爲了安全起見。

HTTPS頁面被阻止加載非HTTPS資源,如Javascript,圖像和CSS文件,並會顯示你的錯誤。

如果您必須通過HTTPS加載您的頁面,請確保所有資源也必須在HTTPS之內。

+0

感謝您的提示。我正在使用cloud9進行開發。但默認情況下,gem通過本地主機url提供faye.js,所以我只是想知道是否有人有過這種體驗,並且可以提出另一種走動。 – Alex

+0

一切都好。如果你只是在做開發,你可以將你的主應用程序切換到HTTP。 –