json (jsonp ではない) を返すページに対して (IE 10 を使用して) ajax 呼び出しを実行しようとしていますが、「401 - 権限がありません: 資格情報が無効なため、アクセスが拒否されました」というメッセージが引き続き表示されます。サイトは IIS で「Windows 認証」を使用するように設定されていますが、サイトを変更して匿名認証を有効にすると、呼び出しが機能します。以下は、私が呼び出しを行うために使用しているコードです。通話で何が欠けているか、または Web サーバーで何を変更する必要がありますか? Windows 認証は現在、Windows 認証で NTLM 認証を使用するように設定されています。
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
<script src="scripts/jquery-2.0.3.min.js"></script>
<script src="scripts/base64.js"></script>
<script type="text/javascript">
function QueryMyData() {
var postUrl = 'http://mydevpage/storage.ashx';
var data = 'AssetNumber=102405';
$.support.cors = true;
$.ajax({
type: "POST",
url: postUrl,
data: data,
dataType: 'json',
crossDomain: true,
cache: false,
username: "mydomain.net\\myuser",
password: "password",
beforeSend: function (xhr) {
xhr.withCredentials = true;
},
success: function (result) {
if (result) {
if (result.error)
alert(result.error);
else
alert(result.id);
}
},
error: function (xhr, ajaxOptions, thrownError) {
alert('Unknow Error:' + thrownError + ajaxOptions + xhr.status + " " + xhr.statusText);
}
});
}
QueryMyData();
</script>
</head>
<body>
</body>
</html>