我有一个新的Web服务我正在尝试实现...当我在调试器中运行它时,服务中调用的函数在我设置的断点处停止但是我注意到该值为null ...我在最后一天试图解决这个问题时,我已经烧毁了自己。
如果我看起来散乱或没有提供足够的信息,我道歉......我感谢任何帮助
我也曾尝试过Fiddler;它在上面的断点处停止。
我在想我的json可能会搞砸?
来自客户的电话:
var url = "http://localhost:35798/Service.svc/Test;
var json = '{"name": "test"}';
$.ajax({
type: "GET",
url: url,
dataType: "json",
processData: true,
data: json,
contentType: "application/json; charset=utf-8",
success: function (data) {
alert("Passed" + data.CheckFileResult);
},
error: function (data) {
alert(data.d);
}
});
服务:
[OperationContract]
[WebInvoke(Method="GET", ResponseFormat=WebMessageFormat.Json)]
public string Test(string name)
{
return "hi";
}
服务配置:
<system.serviceModel>
<behaviors>
<endpointBehaviors>
<behavior name="Site.Service1AspNetAjaxBehavior">
<enableWebScript />
</behavior>
<behavior name="Site.ServiceAspNetAjaxBehavior">
<enableWebScript />
</behavior>
</endpointBehaviors>
</behaviors>
<serviceHostingEnvironment aspNetCompatibilityEnabled="true" />
<services>
<service name="Site.Service">
<endpoint address="" behaviorConfiguration="Site.ServiceAspNetAjaxBehavior"
binding="webHttpBinding" contract="Site.Service" />
</service>
</services>
</system.serviceModel>
答案 0 :(得分:0)
这一行的语法怎么样:
var json = '{"name": "test"}'
不应该是:
var json = '{name: "test"}';
编辑:你的前两行似乎有点偏离imo。尝试:
var url = "http://localhost:35798/Service.svc/Test";
var json = "{name: 'test'}";
答案 1 :(得分:0)
我通过使用服务引用连接到方法来解决这个问题,然后我在fiddler中看到了请求,并意识到json确实是格式错误的...还有一个额外的空间
'{ "name":"test"}'
...谢谢