【发布时间】:2018-11-26 20:03:48
【问题描述】:
我一直在尝试通过 vue js 应用程序使用 JIRA rest API,在生成 API 密钥后,我使用 postman 运行 API 请求并且它运行良好。
首先我尝试使用 axios 客户端,但后来因为请求是“选项”而不是“获取”而被跨源卡住了。
那是代码:
axios.get(session_url, {
headers: {'Authorization': + basicAuth }
}).then(function(response) {
console.log('Authenticated');
}).catch(function(error) {
console.log('Error on Authentication');
});
然后我想尝试不同的解决方案并安装 jquery。使用此代码:
$.ajax({
url: session_url,
async: true,
type:'GET',
dataType: 'json',
contentType: 'application/json',
beforeSend: function(xhr) {
xhr.setRequestHeader("Authorization", "Basic "+btoa(auth));
},
success: function(json){
alert('success');
},
error: function(err) {
console.log(err);
}
});
但这也不起作用,我在使用 data type: 'json' 时发现请求是 OPTION 然后得到的跨源问题。当我使用“jsonp”时,请求会收到 400 响应,当我查看请求时,我看不到身份验证请求,因此我可以编辑请求并再次运行它,它正在工作。
我做错了什么?我该如何解决?
【问题讨论】:
标签: javascript jquery ajax vue.js jira