我的web服务甚至没有执行,路径应该是正确的,因为错误消息不会抱怨这一点.
令我震惊的是标题,响应是肥皂但请求是json,它应该是这样的吗?
Response Headersvisa källkod Content-Type application/soap+xml; charset=utf-8 Request Headersvisa källkod Accept application/json,text/javascript,*/* Content-Type application/json; charset=utf-8
我得到的错误消息如下(抱歉这个巨大的消息,但它可能很重要):
soap:ReceiverSystem.Web.Services.Protocols.SoapException:服务器无法处理请求. —> System.Xml.XmlException:根级别的数据无效.第1行,第1位.
在System.Xml.XmlTextReaderImpl.Throw(例外e)
在System.Xml.XmlTextReaderImpl.Throw(String res,String arg)
在System.Xml.XmlTextReaderImpl.ParseRootLevelWhitespace()
在System.Xml.XmlTextReaderImpl.ParseDocumentContent()
在System.Xml.XmlTextReaderImpl.Read()
在System.Xml.XmlTextReader.Read()
在System.Web.Services.Protocols.SoapServerProtocol.SoapEnvelopeReader.Read()
在System.Xml.XmlReader.MoveToContent()
在System.Web.Services.Protocols.SoapServerProtocol.SoapEnvelopeReader.MoveToContent()
在System.Web.Services.Protocols.SoapServerProtocolHelper.GetRequestElement()
在System.Web.Services.Protocols.Soap12ServerProtocolHelper.RouteRequest()
在System.Web.Services.Protocols.SoapServerProtocol.RouteRequest(SoapServerMessage消息)
在System.Web.Services.Protocols.SoapServerProtocol.Initialize()
at System.Web.Services.Protocols.ServerProtocolFactory.Create(Type type,HttpContext context,HttpRequest request,HttpResponse response,Boolean& abortProcessing)
—内部异常堆栈跟踪结束—
这是我的代码:
$('selector').autocomplete({ source: function(request,response) { $.ajax({ url: "../WebService/Member.asmx",dataType: "json",contentType: "application/json; charset=utf-8",type: "POST",data: JSON.stringify({prefixText: request.term}),success: function(data) { alert('success'); },error: function(XMLHttpRequest,textStatus,errorThrown){ alert('error'); } }) },minLength: 1,select: function(event,ui) { } });
我的webservice看起来像这样:
[WebService(Namespace = "http://tempuri.org/")] [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)] [System.ComponentModel.ToolBoxItem(false)] [ScriptService] public class Member : WebService { [WebMethod(EnableSession = true)] [ScriptMethod(ResponseFormat = ResponseFormat.Json)] public string[] GetMembers(string prefixText) { code code code } }
我究竟做错了什么?提前致谢 :)