用Jquery访问WebService并返回Json的代码第1/3页

 更新时间:2008年09月15日 22:37:34   作者:  
经常会用JavaScript访问asp.net的Webservice的需求,通常的方法是用asp.net ajax来解决,但asp.net ajax框架在不国内并不经常被使用。
在我们的应用中一般会是这样的,使用了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; }
}
}

相关文章

  • asp将本地的文件上传到服务器

    asp将本地的文件上传到服务器

    如果你想把自己机器的图片或者文件放到服务器上该怎么办呢?<BR>可选有三种办法ftp上传、用u盘拷贝到服务器上、如果服务器支持asp上传功能,用网页浏览器将文件上传到服务器上
    2015-09-09
  • 详解c# .net core 下的网络请求

    详解c# .net core 下的网络请求

    本篇文章主要介绍了详解c# .net core 下的网络请求,大致介绍下在.net core 下如何进行http请求,主要仍然是GET和POST方法,有兴趣的可以了解下
    2017-05-05
  • 使用ASP.NET Web API构建Restful API

    使用ASP.NET Web API构建Restful API

    这篇文章介绍了使用ASP.NET Web API构建Restful API的方法,文中通过示例代码介绍的非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-04-04
  • asp.net实现文件无刷新上传方法汇总

    asp.net实现文件无刷新上传方法汇总

    本文给大家介绍的是asp.net实现文件无刷新上传的2种方法,分别是使用swfupload插件和uploadify插件,讲述的十分细致全面,附上示例,有需要的小伙伴可以参考下。
    2015-06-06
  • C#读取中文字符及清空缓冲区的实现代码

    C#读取中文字符及清空缓冲区的实现代码

    有一个txt的中英文语料库文件,内容是英文一句中文一句相间的,共3000行,需要把英文句和中文句分开,放在单独的txt文件中。
    2010-12-12
  • ASP.NET文件上传控件Uploadify的使用方法

    ASP.NET文件上传控件Uploadify的使用方法

    这篇文章主要为大家详细介绍了ASP.NET文件上传控件Uploadify的使用方法,感兴趣的小伙伴们可以参考一下
    2016-03-03
  • asp.net 常用字符串处理方法

    asp.net 常用字符串处理方法

    asp.net 常用字符串处理方法,学习asp.net的朋友可以参考下。
    2010-12-12
  • ASP.NET 控件开发系列之图片切换web控件

    ASP.NET 控件开发系列之图片切换web控件

    刚开始学习控件开发,写了一个web图片切换控件,欢迎大家拍砖.
    2010-04-04
  • Visual Studio 2017安装心得总结

    Visual Studio 2017安装心得总结

    这篇文章主要为大家详细总结了Visual Studio 2017安装心得,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-03-03
  • ADO.NET 读取EXCEL的实现代码((c#))

    ADO.NET 读取EXCEL的实现代码((c#))

    经常需要在数据库与Execl之间互导数据。net时代,ADO.NET可以使用使用Microsoft.Jet.OleDb访问访问Excel,网上已经有很多类似的资源,最典型也是最简单的可能如下:(asp.net环境)
    2012-12-12

最新评论