Я пытаюсь вызвать веб-службу из пользовательского элемента управления.Ошибка веб-службы, но не возвращает ошибку
Вот код веб-службы:
[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: false
или dataType: "json"
) Я получаю внутреннюю ошибку сервера. В противном случае ошибки нет, но я попытался отладить его, и он не попал в веб-службу.
function OnFail() {
alert("Failed");
}
, когда я смотрю на запросы в Fiddler я получаю 401 Несанкционированное с сообщением:
{ «Сообщение»: «Был ошибка при обработке запроса.», «StackTrace»: «», «ExceptionType»: «"}
Вы можете указать код функции OnFail? –
На данный момент он ничего не делает, но я поставил его в вопрос – Gesh
В какой версии SharePoint вы используете 2010 или 2013? 2010 не имеет доступного свойства 'webAbsoluteUrl'. Попробуйте удалить '_spPageContextInfo.webAbsoluteUrl' и просто использовать URL-адрес относительного макета. –