我用两种简单的方法(一种 GET,另一种 POST)在 VS 2010 中制作了 Restfull WS。他们看着像是:
[ServiceContract]
public interface IService1
{
[OperationContract]
[WebInvoke(Method = "POST", UriTemplate = "createUser")]
string createUser();
[OperationContract]
[WebInvoke(Method = "GET", ResponseFormat = WebMessageFormat.Xml, UriTemplate = "loginUser/{email}/{password}")]
string loginUser(string email, string password);
}
这些方法的定义很简单:
public class Service1 : IService1
{
public string createUser()
{
return "Successful POST call !!! ";
}
public string loginUser(string email, string password)
{
return "Successful GET call !!! " + email + " - "+ password;
}
}
我已将此服务发布到 IIS 并在浏览器中测试了我的方法(仅 loginUser (GET) 方法,无法通过浏览器测试 createUser (POST) 方法)和方法 (loginUser ) 工作正常。当我尝试通过 jQuery AJAX 调用方法时,我总是在没有任何通知的情况下收到错误调用。我检查了我的提琴手,并且有正确的反应。
我的 Ajax 方法:
$(document).ready(function(){
$("#button2").click(function(){
$.ajax({
type: "GET",
url: "http://localhost/AutoOglasi/Service1.svc/loginUser/bole/bole",
success: function (response) {
alert("respons "+response);
},
error: function (request, status, error) {
alert(request.responseText+" -- " + status + " --- "+ error);
}
});
});
});
我 mozila firebug 我部分 XML 我得到这个:
XML 解析错误:未找到元素位置:moz-nullprincipal:{ba25ef4a-f215-486e-b965-e70714c5af31} 第 1 行,第 1 列:^
我在这里做错了什么,我只是想不通,因为提琴手给了我很好的回应?