2014-11-06 2 views
0

Я пытаюсь вызвать веб-сервис с помощью ajax, im получаю внутреннюю 500 ERROR. Можете ли вы посоветовать им не знать, что я делаю неправильно, я могу без проблем вызвать веб-метод ,вызов webservice с jquery ajax jsonp: ошибка

JQUERY AJAX CALL 

<script type="text/javascript"> 

function LoginVailid() { 

    $.ajax({ 
     url: "http://localhost:49301/AppService.asmx/LoggonAuthentication", 
     contentType: "application/json; charset=utf-8", 
     data: "{}", 
     dataType: "jsonp", 
     jsonp: "callback", 
     crossDomain: true, 
     success: function (json) { 
      alert(json.d); 
     }, 
     error: function() { 
      alert("Hit error fn!"); 
     } 
    }); 
} 
</script> 

WebService МЕТОД

[WebService(Namespace = "http://tempuri.org/")] 
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)] 
[System.ComponentModel.ToolboxItem(false)] 

[System.Web.Script.Services.ScriptService] 
public class Service1 : System.Web.Services.WebService 
{ 

    [WebMethod] 
    [ScriptMethod(UseHttpGet = true, ResponseFormat = ResponseFormat.Json)] 
    public string LoggonAuthentication() 
    { 
     return "Hello World"; 
    } 

} 
+0

Вы можете попробовать изменить '' dataType' из jsonp' в 'JSON ' –

+0

Если я это сделаю, то получите следующий ERROR.XMLHttpRequest не может ad http: // localhost: 49301/AppService.asmx/LoggonAuthentication? {}. В запрошенном ресурсе нет заголовка «Access-Control-Allow-Origin». Поэтому исходный адрес http: // localhost: 55255 'не допускается. Ответ получил код состояния HTTP 500. –

+0

> Я пытаюсь вызвать веб-сервис с помощью ajax, im получая внутреннюю 500 ERROR. Можете ли вы отлаживать и проверять реальное исключение? –

ответ

0

Попробуйте этот код

[WebMethod] 
[ScriptMethod(UseHttpGet = true, XmlSerializeString=false, ResponseFormat = ResponseFormat.Json)] 
public string LoggonAuthentication(string callback) 
{ 
    return callback + "({message: 'Hello World'})"; 
} 

Также этот article и this SO question может помочь

Смежные вопросы