我有以下問題:我需要從我網站上的頁面(https://test.com)發送一些數據到另一個(例如http://anotherdomain.com)。用戶只需將數據輸入到文本框並單擊一個按鈕。此頁面上的腳本將處理單擊事件併發送GET請求(使用jQuery ajax方法)到http://anotherdomain.com。使用jsonp跨域請求:從https到http
var enteredValue = $('#MytextBox').val();
function jsonpCallbackFunc(data)
{
}
$.ajax({
url: 'http://anotherdomain.com/qwerty/ajaxpage.php',
data: { valuefield: enteredValue },
dataType: 'jsonp',
jsonp: 'callback',
jsonpCallback: 'jsonpCallbackFunc',
success: function (json) {
// some code
}
})
我使用的是Firefox收到一個錯誤 - 「阻止加載混合活動內容http://anotherdomain.com/qwerty/ajaxpage.php ...」。 IE9和Chrome的情況相同。
問題:我們該如何解決這個問題?我們可以只允許這個腳本僅用於一個站點,或者我們可以使用另一段代碼(而不是jQuery + jsonp)?
非常感謝您的幫助。
P.S.從「http」站點,此代碼按預期工作。
更新: 我們使用另一個「https」-url(https://anotherdomain.com/qwerty/ajaxpage.php)解決了問題。我們曾嘗試過使用它,但它有不可信的證書。現在它工作正常。感謝您的幫助和建議。
在您的服務器上使用腳本來獲取外部JSON數據並在本地返回。 – Blazemonger
此問題似乎與主題無關,因爲它涉及不正確的網址和不受信任的證書。 – Max