【发布时间】:2017-04-17 00:05:54
【问题描述】:
我正在尝试向 Yelp API 发送 GET 请求。
我在尝试使用以下代码时遇到 401 错误。根据我的研究,如果我请求 JSONP 数据,我认为我不能以这种方式设置授权。但是,当我尝试使用另一种数据类型时,我收到了跨域请求被阻止的错误。我该如何解决这个问题?
function findFood() {
var lat = document.getElementById("lat");
var lon = document.getElementById("lon");
console.log("lat: " + lat.textContent + " lon: " + lon.textContent);
var url = API_HOST + SEARCH_PATH + "term=" + SEARCH_TERM + "&radius=" + SEARCH_RADIUS + "&latitude=" + parseFloat(lat.textContent) + "&longitude=" + parseFloat(lon.textContent);
console.log(url);
console.log("Bearer " + ACCESS_TOKEN);
$.ajax({
type: "GET",
url: url,
dataType: 'jsonp',
beforeSend: function (xhr) {
xhr.setRequestHeader('Authorization', 'Bearer ' + ACCESS_TOKEN);
},
success: function (data) {
console.log(JSON.stringify(data));
}
})
};
【问题讨论】: