我正在开发使用手机的差距,HTML5和jQuery iPad应用。 我的web服务在ASP.NET的WebAPI与窗体身份验证建成。 在访问API,验证窗口,询问用户名和密码。 提供用户名和密码后,就可以得到结果。 但同时消耗使用jQuery AJAX,错误与消息“未授权”引发的相同的服务。 能否在这个问题上的任何一个帮助。
脚本块在其即时通讯访问网址
$.ajax({
type: 'POST',
url: 'https://myservice.com/api/mypostmethod',
data: {
'item': ItemXml,
'room': RoomXml
'User_Id': 12313
},
success: function (result) {
ProcessResponse(result);
},
error: function (xhr, textStatus, error) {
console.log("Local To Live - " + xhr.statusText);
console.log("Local To Live - " + textStatus);
console.log("Local To Live - " + error);
}
});
如何调用这个服务? 我还试图用户的jQuery XHR头和使用的码是如下
function getAuthorizationHeader(username, password) {
var authType;
if (password == "") {
authType = "Cookie " + $.base64.encode(username);
}
else {
var up = $.base64.encode(username + ":" + password);
authType = "Basic " + up;
};
return authType;
};
$.ajax({
type: 'POST',
url: 'https://myservice/api/mypostmethod',
data: {
'item': '',
'room': '',
'User_Id': 12313
},
beforeSend: function (jqXHR, Settings) {
var AuthHeaders = getAuthorizationHeader("username", "password");
jqXHR.setRequestHeader("Authorization", AuthHeaders);
},
success: function (result) {
ProcessSyncResponse(result);
},
error: function (xhr, textStatus, error) {
alert("Error - StatusCode : "+xhr.status );
}
});
请帮助解决这一问题。 谢谢。