用Jquery访问WebService并返回Json的代码

在我们的应用中一般会是这样的,使用了jquery作为客户端框架,ajax请求也通常返回html或者json。html这里就不讨论了。返回json一般都是搞一个handler.ashx来处理请求,拼凑字符串来返回json。从而放弃了ws,因为ws返回的是xml,使用起来不方便。

所以我觉着比较完美的解决方法是让ws返回json而且不用asp.net ajax的客户端框是比较理想的解决方法。

通过观测发现asp.net ajax的客户端框架请求webservice的时候返回的是json,为什么webservice没有返回xml而返回了json呢?抓包分析到,关键在request的headers中 “Content-Type: application/json;utf-8” ,因此webservice就使用了json的序列化,应该是“System.Web.Script.Serialization.JavaScriptSerializer”这个类完成的工作,通过web.config的配置,把*.asmx交给了System.Web.Extensions.Dll。也就是这里还是用了asp.net ajax,不过是用的服务端部分,我这里直接用的asp.net 3.5

以上都是在啰嗦,具体的方法很简单,看例子

ws1.asmx 

代码如下:

using System;

using System.Collections;

using System.ComponentModel;

using System.Data;

using System.Linq;

using System.Web;

using System.Web.Services;

using System.Web.Services.Protocols;

using System.Xml.Linq;

namespace test2

{

/// <summary>

/// Summary description for WS1

/// </summary>

[WebService(Namespace = “http://onewww.org/”)]

[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]

[ToolboxItem(false)]

[System.Web.Script.Services.ScriptService]

public class WS1 : System.Web.Services.WebService

{

[WebMethod]

public string HelloWorld()

{

return “Hello World”;

}

[WebMethod]

public TestUser CreateUser(string name,int age)

{

return new TestUser { Name = name, Age = age };

}

}

public class TestUser

{

public string Name { get; set; }

public int Age { get; set; }

}

}

当前1/3页 
123下一页

转载请注明:代码学堂>编程开发 > ASP.NET > 用Jquery访问WebService并返回Json的代码

1. 本站所有资源来源于用户上传和网络,因此不包含技术服务请大家谅解!如有侵权请邮件联系客服!10210454@qq.com
2. 本站不保证所提供所有下载的资源的准确性、安全性和完整性,资源仅供下载学习之用!如有链接无法下载、失效或广告,请联系客服处理,有奖励!
3. 您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容资源!如用于商业或者非法用途,与本站无关,一切后果请用户自负!
4. 如果您也有好的资源或教程,您可以投稿发布,成功分享后有RB奖励和额外RMB收入!

磊宇堂正在使用的服务器 维护管理由磊宇云服务器提供支持

磊宇堂 » 用Jquery访问WebService并返回Json的代码

提供最优质的资源集合

立即查看 了解详情