c#webservice怎么样返回json
首先.webservice本身就是基于xml的;数据的传递就是xml;其次.你的截图叫报文.是用来提交soap1.1/1.2以及接受返回值的xml报文格式最后,你只需要在你的webservice的方法内,返回string类型;该返回值是一个标准的json格式即可.当然,ws他不是一项技术而只是一种规范,你可以用很多种方法去实;比如新建一个页面(*.jsp/asp/aspx/php等等),通过方法在页面上print你要输出的json数据
JqueryAjax学习实例2向页面发出请求返回JSon格式数据
这个要看情况,如果一次ajax请求只是返回几个参数,那当然选择使用返回json来完成。但是如果像是加载评论这些,当然使用直接从后端返回html更好。我们之前在做ajax应用的使用,这样使用的考虑主要是:
1.这样可以减少初次加载时页面中html元素的数量,减少数据传递;
2.同样可以减少前端js的操作。
你想想像加载评论这些,不使用从后端来返回html,那只有要么在加载页面时在页面放上隐藏的模板,然后通过返回json数据使用js去添加这些数据;要么就是直接在js里面拼装。这两种方式都会增加js的操作;后台的实现你可以自己选择,我们之前在做的时候,可以直接返回一个jsp,也可以通过Java去生成模板。如果json数据格式不合法怎么返回数据
,如果编写接口给他人调用,只有一段返回数据,没有其他信息说明这是非常不好的。
那问题来了,怎么不好呢?1,如果知识返回一段调用后的数据那还好,要是调用失败呢?如果没有返回码,没有信息提示,就让调用者去猜测吗,而不能做其他的处理。
所以为了更加规范的处理返回格式的问题,我把json封装了起来
C#写了一个简单web服务器,处理get请求后返回json的求教
新建建Web服务页面(*.asmx)
函数如下:
[WebMethod]
public string HelloWorld()
{
return "Hello World";
}
js调用如下:
$.ajax({
type: "POST",
url: "/Webservice/test.asmx/HelloWorld",
data: "{'Product_ID':'" + ProductID + "'}",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (msg) {
try {
//do something
} catch (e) {
}
},
error: function () {
return false;
}
});
怎样将webservice服务发出的数据转为Json格式的
你把webservice的返回值写成json格式的字符串,然后在js里面通过ajax调用,具体的webservice就不写了,相信你会的,这里只写调用方法。$.ajax({ contentType:"application/json" url:url(调用webservice的方法的地址), type:"post", data:"{value1:'value',value2:'value'}",//这里是webservice中需要的参数,如果不需要参数,可以把花括弧中清空,但是还是要这一行的,否则会有问题。
dataType:"json", success:function(data){ try{ var json = eval("("+data+")");//这里解析json字符串} catch(ex){ alert('error') } } })记住,如果想得到json字符串,webservice中的方法的返回值必须是json字符串类型,否则解析的时候报错
还没有评论,来说两句吧...