【发布时间】:2017-11-02 19:08:07
【问题描述】:
我为此绞尽脑汁,但似乎无法找出解决方案,因此请谦虚地寻求您的帮助。我在 chrome 上使用 restlet 客户端,它使用 cURL 命令从服务器获取 json。我需要将此 curl 命令转换为 AJAX,并且我将提供尽可能多的代码。你能帮我把它转换成 jQuery 的 Ajax 吗?
cURL Command:
curl -i -L -X GET \
-H "Authorization:Basic base64username:base64password" \
'https://internalserverurl'
以下是我的 jQuery AJAX 方法:
function make_base_auth(user, password) {
var tok = user + ':' + password;
var hash = Base64.encode(tok);
return "Basic " + hash;
}
function getData() {
$.ajax({
url: "https://internalurl",
beforeSend: function(xhr) {
xhr.setRequestHeader("Authorization", "Basic " + btoa("username:password"));
},
type: 'GET',
dataType: 'json',
contentType: 'application/json',
processData: false,
success: function (data) {
alert(JSON.stringify(data));
console.log(data);
},
error: function (data) {
var strBuilder = [];
for(key in data){
if (data.hasOwnProperty(key)) {
strBuilder.push(key + ":" + data[key] + "<br><br>");
}
}
alert(strBuilder.join(""));
$('#errordiv').html(strBuilder);
}
});
}
感谢大家的帮助。
【问题讨论】:
-
我在这里没有看到任何实际问题。
-
你是正确的@CBroe 感谢您的捕获。道歉。
-
您可以使用 $.ajax 方法。按照在成功块中包含您的成功回调方法。
-
jQuery.ajax 参数
username和password负责身份验证部分。
标签: javascript jquery ajax curl converter