2016-10-19 12 views
0

会議中にノートやその他の情報を記録できるログインが必要な内部Webサイトがあります。私は同じフォルダ内の同じサーバー上のWebサービスにAJAX呼び出しでデータをポストしようとしています。私は401の不正なエラーが発生しています。ajax webservice asmx 401 unauthorized error

Javascriptを:

function saveNotes() 
{ 
    var json = "{ ID: 5, Note: 'Test Note'}"; 
    $.ajax({ 
     type: "POST", 
     url: "AutoSaveService.asmx/AutoSave", 
     data: json, 
     xhrFields: { withCredentials: true }, 
     contentType: "application/json; charset=utf-8", 
     dataType: "json", 

     success: function (r) { 
      var data = JSON.parse(r.d); 
      console.log(data.M + ":" + data.N) 
     }, 
     error: function (r) { console.log(r.responseText); }, 
     failure: function (r) { console.log(r.responseText); } 
    }); 
} 

のWebService ASMXファイル:私は、A内のAJAX呼び出しをやったことがないている

<authentication mode="Forms"> 
    <forms loginUrl="login.aspx" name="adAuthCookie" timeout="120" path="/"/> 
</authentication> 

<%@ WebService Language="C#" Class="AutoSaveService" %> 

[System.Web.Services.WebService(Namespace = "http://tempuri.org/")] 
[System.Web.Services.WebServiceBinding(ConformsTo = System.Web.Services.WsiProfiles.BasicProfile1_1)] 
[System.Web.Script.Services.ScriptService] 
public class AutoSaveService : System.Web.Services.WebService 
{ 
    [System.Web.Services.WebMethod] 
    [System.Web.Script.Services.ScriptMethod(ResponseFormat = System.Web.Script.Services.ResponseFormat.Json)] 
    public static string AutoSave(int ID, string Note) 
    { 
     var data = new { M = ID, N = Note }; 
     System.Web.Script.Serialization.JavaScriptSerializer js = new System.Web.Script.Serialization.JavaScriptSerializer(); 

     return js.Serialize(data); 
    } 

} 

私は、フォーム認証(AD対認証)を使用していますあなたが必要とするその他の情報をお知らせください。

私は同様の問題に対する他の解決策を検討しましたが、問題を解決することはできません。

答えて

0

私はそれを理解しました。

public static string AutoSave(int ID, string Note) 

は次のようになります。

public string AutoSave(int ID, string Note) 
関連する問題