我在發送JSONP請求從HTTPS站點到HTTP站點的問題。HTTPS到HTTP JSONP請求
我有一個(非本地)通過https(有效證書)的測試環境,我可以成功地運行所有這些跨站點/「交叉協議」請求(帶有警告,但沒有錯誤)。
谷歌瀏覽器的Javascript控制檯輸出:
The page at https://my.test.environment/ ran insecure content from http://non.secure.site/service?jsonCallback=jsonp1331132928704
然而,在生產,(在谷歌應用程序引擎,Appspot上子域)谷歌瀏覽器阻止等待用戶確認的所有請求。
谷歌瀏覽器的Javascript控制檯輸出(特別注意[鎖定]文本):
[blocked] The page at https://production.appspot.com/ ran insecure content from http://non.secure.site/service?jsonCallback=jsonp1331132928704
我知道我在做什麼是不安全的,而是由第三方提供該服務到目前爲止還沒有可用的SSL通信。我真的很困惑,因爲我不明白爲什麼在測試環境中工作(有警告),而不是在appspot(Google App Engine)下工作。
我試圖調查沒有成功標頭。
測試環境標題:
Connection:Keep-Alive
Content-Encoding:gzip
Content-Language:es
Content-Length:2524
Content-Type:text/html;charset=utf-8
Date:Wed, 07 Mar 2012 15:48:30 GMT
Keep-Alive:timeout=15, max=100
Set-Cookie: cookie_info...
Vary:Accept-Encoding
Appspot上標題:
access-control-allow-credentials:false
access-control-allow-origin:*
cache-control:no-cache, must-revalidate
content-encoding:gzip
content-length:47890
content-type:text/html; charset=utf-8
date:Wed, 07 Mar 2012 14:52:02 GMT
expires:Fri, 01 Jan 1990 00:00:00 GMT
pragma:no-cache
server:Google Frontend
set-cookie: coookie_info....
status:200 OK
vary:Accept-Encoding
version:HTTP/1.1
我不知道這是爲什麼努力測試envinroment和同樣的方法是通過谷歌瀏覽器阻塞Appspot上。
有什麼想法?
Chrome對待Google HTTPS頁面的方式通常與標準HTTPS頁面不同(例如特殊證書檢查)。也許這是不安全的內容的情況? – Robert 2012-03-07 16:20:37
讓你aré吧。事實上,只有在GAE上部署應用程序(appspot使用Google的證書)時纔會出現問題。我會深入研究它。謝謝! – 2012-03-08 22:04:52
我在我自己的服務器和(有效)證書上有同樣的問題... – Stefano 2012-09-06 14:02:41