Я не могу вызвать веб-службу (asmx) из функции jQuery.
При вызове веб-службы выдается сообщение об ошибке «Доступ запрещен». Он работает на устройстве разработки и на локальном компьютере, но я получаю ту же ошибку.
Вот мой вызов ajax
$.ajax({
type: "POST",
url: "http://server.com/calculator.asmx/calculus",
data: "{ 'userID': '" + $("#usrid").val() + "','password': '" + $("#password").val() + "' }",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: Success,
error: Error
});
Моя веб-служба -
[WebService(Namespace = "http://www.company.com/webservices/calculus")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
[System.ComponentModel.ToolboxItem(false)]
[System.Web.Script.Services.ScriptService]
public class calculator : System.Web.Services.WebService
{
[WebMethod]
[System.Web.Script.Services.ScriptMethod(UseHttpGet=false, ResponseFormat = System.Web.Script.Services.ResponseFormat.Json)]
public bool calculus(string userName, string password)
{// my code}
Ошибка находится в http: //ajax.googleapis. com / ajax / libs / jquery / 1.4.2 / jquery.min.js и ошибка «Доступ запрещен» на e.username? x.open (n, e.url, e.async, e.username, e.password): x.open (n, e.url, e.async);
Я включил [AspNetCompatibilityRequirements (RequirementsMode = AspNetCompatibilityRequirementsMode.Allowed)] в класс, как показано в http://forums.asp.net/p/1570168/3935094.aspx , и не смог исправить проблема Может ли кто-нибудь помочь мне в этом.
Спасибо