2017-03-03 55 views
1

我在我的MacBook(帶有macOS)中成功運行了我的JavaScript文件phantomjs --web-security=no myfile.js,但未能在Ubuntu上運行它,錯誤:XMLHttpRequest無法加載https:// [網站] .com不支持跨域請求

XMLHttpRequest Cannot Load https://[website].com Cross Origin 
Requests are not supported 

我發現我的問題是不同的問題下面

  1. XMLHttpRequest cannot load Cross origin requests are only supported for HTTP
  2. XMLHttpRequest cannot load https://www.[website].com/

對於第一個,我的錯誤信息是'不支持',但不告訴我'只支持HTTP'(儘管我向HTTPS url發送請求)。 對於第二個,我的錯誤消息不需要'訪問控制允許來源'標題。

我試過PhantomJS的--debug=true選項,事實證明,當在Ubuntu中運行時,PhantomJS會靜靜地丟棄cookie。

在我的情況下,有誰能告訴我如何解決這個問題?

+0

什麼實際的家長要求?該錯誤是針對子請求的,也許父和子請求的協議是不同的。 –

+0

@ThanNgoHoai我的請求只是'var request = new XMLHttpRequest()',然後'request.open('GET','my URL',false); request.sent()'。我不知道什麼是子請求。 – Patrick

+0

因此,您的'我的網址'應該與當前頁面的協議和服務器名稱相同。 –

回答