Ajax请求ashx返回各类数据的常见处理方式

时间:2023-01-23 09:02:28
 。请求text数据,在success事件中手动解析
前台:
$.ajax({
type: "post",
url: "checkFile.ashx",
data: { "filename": "" },
dataType: "text",
success: function (data) {
var json = eval('(' + data + ')');
alert(json.Age);
}
});
后台处理:
HttpResponse res = context.Response;
HttpRequest req = context.Request;
string code = req["filename"];
string jsonString = "{\"Age\":28,\"Name\":\"张三\"}";
//string jsonString = "{'Age':23,'Name':'abc'}";
if (code != null)
{
res.Write(jsonString);
res.ContentType = "text/plain";
res.End();
}
在这种情况下,单引号分割和转移双引号分割,都可以。 .请求json格式数据,jquery自动解析
前台:
$.ajax({
type: "post",
url: "checkFile.ashx",
data: { "filename": "" },
// contentType:"application/json",----------在ajax请求ashx文件的json数据时,此属性不能被指定,而在请求webservices时,是必须指定的。
dataType: "json",
success: function (data) {
alert(data.Name);
}
}); 后台处理:
HttpResponse res = context.Response;
HttpRequest req = context.Request;
string code = req["filename"];
string jsonString = "{\"Age\":28,\"Name\":\"张三\"}";
if (code != null)
{
res.Write(jsonString);
res.ContentType = "text/plain";
res.End();
}
在这种情况下,只有转移双引号分割,才可以在前台被jquery方法自动解析。 .带序列化的text数据前台解析
前台:
$.ajax({
type: "post",
url: "checkFile.ashx",
data: { "filename": "" },
dataType: "text",
success: function (data) {
$("p").text(data);
var json = eval('(' + data + ')');
alert(json.Name);
}
});
json数据内容: {"Name":"zhangsan","Code":,"Birthday":"\/Date(649666800000)\/"}
后台处理: HttpResponse res = context.Response;
HttpRequest req = context.Request;
string code = req["filename"];
Student stu = new Student {
Name="zhangsan",
Code=,
Birthday=Convert.ToDateTime("1990-8-3")
};
JavaScriptSerializer serializer=new JavaScriptSerializer();
string jsonString = serializer.Serialize(stu);
json数据内容: "{\"Name\":\"zhangsan\",\"Code\":111,\"Birthday\":\"\\/Date(649666800000)\\/\"}"
if (code != null)
{
res.Write(jsonString);
res.ContentType = "text/plain";
res.End();
}
[Serializable]
public class Student
{
public string Name { get; set; }
public int Code { get; set; }
public DateTime Birthday { get; set; }
} . 带序列化的json 前台自动解析:
前台:
$.ajax({
type: "post",
url: "checkFile.ashx",
data: { "filename": "" },
dataType: "json",--------------只要指定此处就可以,后台处理同上。
success: function (data) {
alert(data.Name);
}
});

Ajax请求ashx返回各类数据的常见处理方式的更多相关文章

  1. Ajax请求ashx 返回 json 格式数据常见问题

    问题:ashx 返回的字符串json格式,在前台ajax自动解析失败. 问题分析:经过排查,发现是拼接json时出现” ’  “单引号,jquery无法解析,用” “ “双引号才可以.例如: stri ...

  2. Jquery通过ajax请求NodeJS返回json数据

    最近看了NodeJS相关的,在网上查了下结合AJAX的应用,感觉应用前景还是不错的.为什么用这个组合呢? 1.NodeJS不需要安装,拷贝过去就可以使用,而环境变量可以只配置在当前cmd窗口,运行方便 ...

  3. ajax请求action返回json数据

    1,服务端: HttpServletResponse response = ServletActionContext.getResponse(); response.setContentType(&q ...

  4. Query通过Ajax向PHP服务端发送请求并返回JSON数据

    Query通过Ajax向PHP服务端发送请求并返回JSON数据 服务端PHP读取MYSQL数据,并转换成JSON数据,传递给前端Javascript,并操作JSON数据.本文将通过实例演示了jQuer ...

  5. jquery的ajax异步请求接收返回json数据

    http://www.jb51.net/article/51122.htm jquery的ajax异步请求接收返回json数据方法设置简单,一个是服务器处理程序是返回json数据,另一种就是ajax发 ...

  6. 【04】AJAX接收服务器返回的数据

    AJAX接收服务器返回的数据 readyState 和 status 属性 readyState 属性保存有 XMLHttpRequest 对象的交互状态,从 0 到 4 变化: 0 :未初始化(还没 ...

  7. jQuery ajax请求错误返回status 0和错误error的问题

    上周发现一个jQuery ajax请求错误返回status 0和错误error的问题,responseText是"error",状态码是0而不是200: $.ajax({ type ...

  8. ajax请求ashx跨域问题解决办法

    ajax请求ashx跨域问题解决办法 https://blog.csdn.net/windowsliusheng/article/details/51583566 翻译windowsliusheng  ...

  9. jQuery通过Ajax向PHP服务端发送请求并返回JSON数据

    SON(JavaScript Object Notation) 是一种轻量级的数据交换格式.易于人阅读和编写,同时也易于机器解析和生成.JSON在前后台交互的过程中发挥着相当出色的作用.请接着往下看教 ...

随机推荐

  1. MySql的一些操作

    我们安装mysql时一开始root用户如果没设置的话是可以没有密码的,所以,如果需要设置密码,则 格式:mysql> set password for 用户名@localhost = passw ...

  2. Spinner的深入学习

    简介: spinner是一个列表选择框,会在用户选择后,展示一个列表供用户进行选择.Spinner是ViewGroup的间接子类,它和其他的Android控件一样,数据需要使用Adapter进行封装. ...

  3. flume系列之—flume ng使用demo

    摘自:http://rjhym.blog.163.com/blog/static/28130232201263042013972/

  4. 福建省队集训被虐记——DAY1

    今天算是省冬的第一天--早上柯黑出题,说是"信心欢乐赛",其实是"使你失去信心.不再欢乐的比赛" 顺便orz一下来看这篇文章的各路神犇--求轻虐 水题 (py. ...

  5. CentOS6.5 服务器+apache5.3绑定多个域名+SELinux设置

    下面简单的介绍了如何通过设置Apache的http.conf文件,进行多个域名以及其相关的二级域名的绑定(假设我们要绑定的域名是minidx.com和ntt.cc,二级域名是blog.minidx.c ...

  6. crontab如何设置秒级别的定时【转载】

    * * * * * date > /home/gamester88/test/nihao.txt * * * * * (sleep 10 && date >> /ho ...

  7. 小试cordova

    Cordova就是以前的PhoneGap捐献给Apache的最新开源版本. 安装一定要走npm网络方式,需要装Node.js,npm(windows nodejs安装包包含npm),Git.因为必须要 ...

  8. 五分钟学会centos配置gitlab

    下载gitlab 亲测: centos6.5 安装依赖包: : yum install curl policycoreutils policycoreutils-python openssh-serv ...

  9. CMD定时倒数

    修改if %count%==20 goto finish改变秒数 CMD: mode con: cols=80 lines=25color 4ftitle Please WaitSET /P var= ...

  10. Java文件的写入

    写文件与读文件类似,可以是以字节为单位写入,可以是以字符为单位写入. 对应读操作FileOutputStream是以字节为单位进行写入的: FileOutputStream fileOutputStr ...