欧美一区二区三区,国内熟女精品熟女A片视频小说,日本av网,小鲜肉男男GAY做受XXX网站

jquery.ajax 本地不能訪問

錢琪琛1年前7瀏覽0評論

在我們日常開發中,使用jquery進行ajax請求是很常見的。但是在某些情況下,我們可能會遇到本地無法訪問的問題,這時候該怎么辦呢?

首先,我們需要了解的是跨域問題,因為瀏覽器因為安全原因,不允許js跨域請求數據。

那么為什么本地會出現無法訪問的情況呢?通常是因為我們的請求地址是一個本地文件路徑,而不是一個真正的地址,比如:

$.ajax({
url: 'file:///C:/Users/Administrator/Desktop/data.json',
type: 'GET',
dataType: 'json',
success: function(data){
console.log(data);
},
error: function(xhr, errorType, error){
console.log(error);
}
});

這種情況下會出現以下錯誤:

XMLHttpRequest cannot load file:///C:/Users/Administrator/Desktop/data.json. Cross origin requests are only supported for protocol schemes: http, data, chrome, chrome-extension, https.

這個錯誤提示告訴我們,跨域請求只支持http、data、chrome等協議。而我們的請求地址是file協議,因此導致了無法訪問的問題。

那么如何解決這個問題呢?我們可以在本地建立一個本地服務器,然后將請求路徑改為localhost訪問本地服務器的地址,比如:

$.ajax({
url: 'http://localhost:8080/data.json',
type: 'GET',
dataType: 'json',
success: function(data){
console.log(data);
},
error: function(xhr, errorType, error){
console.log(error);
}
});

這樣請求就變成了向localhost發送請求,而不是直接訪問本地文件路徑,解決了跨域請求的問題。