Web服务调用失败但不返回错误

时间:2013-09-10 07:35:04

标签: javascript asp.net web-services sharepoint

我正在尝试从用户控件调用Web服务。

以下是网络服务的代码:

[System.Web.Script.Services.ScriptService]
    public class WizardService:System.Web.Services.WebService
    {
        [WebMethod]
        [ScriptMethod(ResponseFormat = ResponseFormat.Json)]
        public string GetNumber()
        {
            return "000000000000";
        }
    }

这是javascript:

 $('#' + '<%= btnMoveNext.ClientID %>').click(function () {
        var requestUri = _spPageContextInfo.webAbsoluteUrl + "/_layouts/15/Project/Services/WizardService.asmx";
        $.ajax({
            type: "POST",
            data: "{}",
            url: requestUri + "/GetNumber",
            contentType: "application/json",
            success: OnSuccess,
            error: OnFail
        });
    })

当此代码执行时,它总是进入函数OnFail。没有显示错误。

如果这有帮助:

如果我在调用服务时尝试更具体(如果我添加 - async: falsedataType: "json"),则会出现内部服务器错误。否则没有错误,但我尝试调试它并没有进入Web服务。

function OnFail() {
        alert("Failed");
    }

当我查看Fiddler中的请求时,我收到了一条401 Unauthorized的消息:

{“消息”:“处理请求时出错。”,“StackTrace”:“”,“ExceptionType”:“”}

1 个答案:

答案 0 :(得分:0)

401错误表示URL资源需要用户身份验证。存在两种情况之一。

  1. 尚未提供的用户身份验证。
  2. 用户身份验证失败。
  3. 如果您不知道为什么您的HTTP资源需要身份验证,最好的办法是联系管理员并与他们打开对话。