2011-08-04 7 views
2

내 영어로 죄송합니다.모노 : 자바 스크립트와 jquery로 웹 서비스를 어떻게 사용할 수 있습니까?

일부 aspx 페이지 (예 : Default.aspx)와 웹 서비스 인 DataService.asmx가있는 웹 사이트를 만들었습니다. Default.aspx 페이지에서 jquery를 사용하여 웹 서비스를 호출하고 싶습니다. 문제는 jquery를 사용하여 웹 서비스를 호출 할 수 없다는 것입니다.

우분투 서버 버전 10.04에서 모노 2.4.4를 사용하고 있습니다.

자바 스크립트와 jquery로 웹 서비스를 어떻게 소비 할 수 있습니까? 런타임 : 모노 2.4.4 ASP.NET 버전 : 2.0.50727.1433

웹 서비스 코드 (불을 지르고 사용

제발 도와주세요, 감사

나는

Object reference not set to an instance of an object 
Description: HTTP 500. Error processing request. 
Stack Trace: System.NullReferenceException: Object reference not set to an instance of an object at System.Web.Script.Services.WebServiceData.GetWebServiceData (System.Web.HttpContext context, System.String virtualPath, Boolean failIfNoData, Boolean PageMethods) [0x00000 ] at System.Web.Script.Services.WebServiceData.GetWebServiceData (System.Web.HttpContext context, System.String virtualPath) [0x00000] at System.Web.Script.Services.RestHandler.CreateHandler (System.Web.HttpContext context) [ 0x00000] at System.Web.Script.Services.RestHandlerFactory.GetHandler (System.Web.HttpContext context, RequestType System.String, System.String url, pathTranslated System.String) [0x00000] at System.Web.Script.Services.ScriptHandlerFactory . GetHandler (System.Web.HttpContext context, RequestType System.String, System.String url, pathTranslated System.String) [0x00000] at System.Web.HttpApplication.GetHandler (System.Web.HttpContext context, System.String url, Boolean ignoreContextHandler) [0x00000] at System.Web.HttpApplication.GetHandler (System.Web.HttpContext context, System.String url) [0x00000] + at System.Web.HttpApplication <Pipeline> c__Iterator2.MoveNext() [0x00000] 

버전 정보를 참조하십시오 DataService.asmx)

[WebService (Namespace = "http://tempuri.org/")] 
[WebServiceBinding (ConformsTo WsiProfiles.BasicProfile1_1 =)] 
[ScriptService()] 
public class DataService: System.Web.Services.WebService 
{ 
    [WebMethod] 
    [ScriptMethod (ResponseFormat = ResponseFormat.Json, XmlSerializeString = false)] 
    public string SayHello() 
    { 
     return "Hello !!!"; 
    } 

}

자바 스크립트 (Default.aspx를)

$ (Document). Ready (function() { 

     $.Ajax ({ 
      type: "POST", 
      url: _webServiceAddress + method, 
      Date: parameters, 
      contentType: "application/json, charset = utf-8", 
      dataType: "json", 
      success: function (data) {alert (data);} 
      error: function() {alert ("Error");} 
     }); 

    }); 


이 자바 스크립트 코드

. 대문자의

$ (document). ready (function() { 

    $.ajax ({ 
     type: "POST", 
     url: _webServiceAddress + method, 
     data: parameters, 
     contentType: "application/json,charset=utf-8", 
     dataType: "json", 
     success: function (data) {alert (data);}, 
     error: function() {alert ("Error");} 
    }); 

}); 

를 적어 둡니다 데이터하지 날짜, 쉼표 성공과 오류를 오토넷 : 다른 하나는

$(document).ready(function() { 
     $.ajax({ 
      type: "POST", 
      url: "DataService.asmx/SayHello", 
      data: "{}", 
      contentType: "application/json; charset=utf-8", 
      dataType: "json", 
      success: function() { alert("Ok"); }, 
      error: function() { alert("Error"); } 
     }); 
    }); 
+0

질문의 코드 형식을 편집하는 동안 글자의 대문자 ('Document','Ready','Ajax' 등)를 알아 냈고 의도적인지 아니면 코드 게시 중 실수? –

+0

'parameters '의 값은 무엇입니까? – jball

답변

2

자바 스크립트가 잘못 미안, 잘못이었다.

+0

여기 자바 스크립트 코드 \t $ (문서() 함수() {$ 아약스 ({ 형 .ready "POST" URL "DataService.asmx/sayHello가" 데이터 : "{ } " contentType이"애플리케이션/JSON; 문자셋 = UTF-8 " dataType와"JSON " 성공 : 함수() { 경보 ("OK ") } 오류 : 함수() { 경고 ("오류"); } }); }); – LucaDev

0

현재 저는 Ajax 호출에서 MyService.asmx/MyMethod를 호출 할 수 없다고 생각합니다. 500은 항상 반환됩니다. 저는 몇 주 동안 솔루션을 추구하고 있습니다. 지금은 .asmx를 ServiceStack.NET 기반 서비스로 대체 할 것입니다.

관련 문제