[英]jQuery.ajax - Why does it not work?
我只是無法使Ajax服務正常工作。 $.get("http://google.com")
簡單類不起作用。 另外,此代碼也不起作用:
<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
</head>
<body>
<script>
$.ajax({
url: "http://google.com",
dataType: "html",
success: function(data, status) {
console.log("Success:");
console.log(" Data: " + data);
console.log(" Status: " + status);
},
error: function(request, status, error) {
console.log("Error:");
console.log(" Request: " + request);
console.log(" Status: " + status);
console.log(" Error: " + error);
},
});
</script>
</body>
</html>
保存在test.html
。
這是控制台上的輸出:
Error:
Request: [object Object]
Status: error
Error:
我猜這些是返回對象的重要值:
readyState 0
responseText ""
status 0
statusText "error"
為什么請求不起作用? 謝謝,
由於同源策略,您無法向另一個域發出請求。 有關更多信息,請參見http://api.jquery.com/jQuery.ajax/ 。
您可以使用JSONP來實現跨域通信。
但是對於純HTML,您必須位於同一域中。
$.ajax({
url: "http://google.com",
dataType: "jsonp",
success: function(data, status) {
console.log("Success:");
console.log(" Data: " + data);
console.log(" Status: " + status);
},
error: function(request, status, error) {
console.log("Error:");
console.log(" Request: " + request);
console.log(" Status: " + status);
console.log(" Error: " + error);
},
});
編輯:
但是,如果您的網址未返回有效的格式化json,則您的請求將失敗。 有關工作示例,請檢查:
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.