Web开发网 > 站内搜索 > webservice json
.net framework3.5 webservice 增加了检查content-type,如果请求头设置了content-type:'application/json ',就会返回json 字符,而不是xml。 首先我们要了解一下webservice 返回的json 结构。返回的json 格式是{d:实际的内容},实际内容根据webservice 方法返回值来确定。1)如果是字符串字符,那么实际内容就是字符串。如果返回的是一个json 格式的字符串,需要注意一下,实际内容不是json 对象,具体参考:jQuery通过调用webservice 返回json 数据的问题2)如果是List对象,那http://www.w3dev.cn/article/20130327/Ext4-JSONStore-load-webservice.aspx
ajax发送请求时,如果设置了contenttype为json ,那么请求webservice 时,会自动将返回的内容转为json 的格式,json 的格式如下{d:webservice 方法返回的字符串内容}这时出现一个问题了,如果方法返回的是一个json 格式的字符串,那么如何获得实际的json 对象,而不是只有一个属性d的json 对象呢?其实很简单,我们只需要在success回调函数中eval下jquery通过获取webservice 得到的json 对象的d属性,就可以获取到实际的json 对象了。如下,如果方法返回的是 {msg:其实我也是json 对象的字符串} 这种字符串信息,我们如何获取到msg这http://www.w3dev.cn/article/20101020/jquery-net-webservice-json-contenttype.aspx
ork 3.5的WebService 返回JSON 数据,另外还要介绍一下用jQuery调用WebService 的参数设置及设置不当所出现的问题,还有出现问题的原因. jQuery调用WebService 网上的介绍也比较多,最近的项目中我也用到不少,一直都很少用.NET Ajax,比较钟情于jQuery调用请求WebService 有几种方法,这主要说一下POST与GET方法,其实安全方法考虑不建议使用GET方法,下面就说一下用jquery调用WebService 的参数设置及设置不当所出现的问题,还有出现问题的原因。我们这里只讨论返回JSON 数据的情况,相信大家都比较了解JSON 格式的数据对于ahttp://www.w3dev.cn/article/20100827/jQuery-request-webservice-return-json.aspx
;alert(json .d);}});+展开-JavaScriptvarjson=eval('('+msg+')'); (这个是把返回的字符值转换成json 对象,这样子才能够正常的操作json ,这里可以用try来捕捉一下错误,因为如果返回的字符串不是标准的json 的话就会出错。) 上面的js要成功运行需要对.net做一下设置让“WebService 输出JSON ” 修改WebService ,导入一个属性+展开-C#"C#"?Class="WebService1"?%>[System.Web.Script.Services.ScriptService()][WebService (Namesphttp://www.w3dev.cn/article/20100827/jquery-webservice-contenttype-application-json.aspx
使用jquery的jsonp请求asp.net的webservice 时,由于webservice 一般返回的数据格式为xml或者只包含一个d属性的json (设置ajax请求的contentType为application/json )对象,具体参考:jquery webservice 。 如果想指定jquery的ajax为jsonp请求,需要调用Response对象输出原始的内容,调用的方法返回值申明为void。示例代码如下,注意asp.net的webservice 要配置允许get/post访问。web.config增加system.web protocols http://www.w3dev.cn/article/20140609/jquery-jsonp-asp.net-webservice.aspx
是json。2)如果一定要可以get请求webservice ,需要在ScriptMethod属性指定UseHttpGet=true,web.config中配置的get/post访问应该只是针对返回xml的,而不是设置过content-type:'application/json '返回json 的,所以get请求会出错。 总结1)返回XML内容时,配置web.config允许webservice get/post访问即可,如果未配置过get/post访问会出现错误,参考:web服务因URL意外地以/**结束,请求格式无法识别2)返回json 内容[请求头添加过content-typhttp://www.w3dev.cn/article/20130327/ajax-webservice-try-use-get-method-but-it-forbidden.aspx
tore加载webservice 时,返回XML不同返回json 格式那么严格,返回json 需要注意的事项多。 返回xml和平时用ajax get/post请求普通页面一样,有参数get请求附加在url后面,post请求则在ajax对象的send中发送url键值对就行。 只要配置过web.config允许get/post请求webservice 后,就可以使用ajax请求webservice 得到xml数据源。否则就需要购置soap信封,灰常的麻烦。 配置xml reader只需要根据返回的xml结构,设置好record配置就行了,有参数时增加extraParams配置,为json 对象,exthttp://www.w3dev.cn/article/20130327/Ext4-XMLStore-load-webservice-demo.aspx
JS使用json 数据自动填充表单titleJS使用json 数据自动填充表单示例/titleform name=myformtext:input type=text name=text /br /textarea:textarea name=textarea/textareabr /radio:input type=radio name=radio value=radio1 /radio1 input type=radio name=radio value=radio2 /radio2br /checkbox:input type=checkbox name=checkbox value=http://www.w3dev.cn/article/20170713/fill-form-with-json.aspx
ext如何读取嵌套的子json 节点数据,如类似下面的数据,用户详细信息放在子节点下userInfo下。nestedData.json { rows: [ { userName: system, userInfo: { active: true, address: 深圳市, birthday: 2014-11-03 } } ]}ext如何读取嵌套的子json 节点数据源代码数据如下(ext示例运行库:http://www.w3dev.cn/article/20151106/ext-read-nested-sub-json-node-data.aspx
asp将json 格式的字符串生成asp对象类库,asp如何解析json 格式的字符串,asp如何读写json 类库 asp读取json 格式字符串示例{ firstName: John, lastName : Smith, age : 25, address : { streetAddress: 21 2nd Street, city : New York, state : NY, postalCode : 10021 }, phoneNumber: [ { type : home, http://www.w3dev.cn/article/20140916/asp-json-class.aspx
调用JSON .stringify将对象转为对应的字符串时,如果包含时间对象,时间对象会被转换为国家标准时间(ISO),而不是当前国家区域的时间,测试代码如下script //var o = new Date(); //console.log(o.toString())//中国时区时间,格式如Wed Jun 11 2014 10:51:42 GMT+0800 //console.log(JSON .stringify(o)); //输出国际标准时间(ISO),减少了8个小时 格式如2014-06-11T02:51:42.624Z/script 要想JSON .stringihttp://www.w3dev.cn/article/20140611/JSON.stringify-Date-how-to-convert-to-local-timezone.aspx
#39;2','username':'dbc','email':'456@163.com'}]Set json = toArray(json )'JSON 对象数组格式的字符串,需要调用toArray方法For i=0 To json .Count-1 Response.Write json (i).(uid) br/ Response.Write json (i)(username) br/ Response.Write json (i)(email) br/NextSet json = Nothing%http://www.w3dev.cn/article/20140311/asp-use-json-object-demo.aspx
对json 对象或者数组[]执行typeof操作时,得到的内容都是object,这样就无法判断是否是json 对象或者是[]申明的数组。script alert(typeof {})//object alert(typeof [])//object/script 如果你的json 对象未定义length成员,可以通过length属性来区分变量是json 还是数组,但是如果json 申明过length为数字的变量,那就无法通过length属性来判断了,可以通过{}空json 对象的toString.call方法改变对象的作用域为数组[],此时输出的内容为[object Array]scrhttp://www.w3dev.cn/article/20140107/javascript-check-Variable-is-json-or-array.aspx
on RecursionJson(json , path) { var isArray = IsArray(json ); //防止JSON 对象定义了length对象,所以判断数组不要通过对象的length属性判断 for (var attr in json ) if (typeof json [attr] == 'object') { if (IsArray(json [attr])) { for (var j = 0; j json [attr].length; j+http://www.w3dev.cn/article/20140107/javascript-Iteration-json-get-path.aspx
的json 对象。如果对tree对象节点增加删除后,需要保存结果到服务器的json 文件中,而不是数据库,可以将递归遍历TreeStore获取原始数据并重建对应的JSON 对象。 获取Ext Tree/TreeStore加载的原始JSON 数据源代码如下,测试通过版本:ext-4.1.1a(ext4-没有Ext.data.NodeInterface接口,代码不兼容Ext4-一下版本的) function buildJSONStruct(childNodes) {//递归遍历NodeInterface生成json 对象 var siblings = [], json ;http://www.w3dev.cn/article/20131219/Serialize-Ext-Tree-TreeStore-To-raw-Json-Data.aspx
= JSON .stringify(obj);console.log( JSON .stringify(obj) );console.dir(JSON .parse(json_str));console.dir(JSON .parse('{a:b,b:\\\\,c:{b:\\\\,a:{b:\\\\}}}'));输出结果如下图 根据转义规则,实际输出一个\在这个\之前必定有一个\。所以如上第一行输出按照书写来说为'{a:b,b:\\\\,c:{b:\\\\,a:{b:\\\\}}}',可通过第三条输出来验证。 总结,如果想在js对象中出现一个\,需要在json 字符http://www.w3dev.cn/article/20130808/javascript-Escape-char-effect-JSON.parse-eval.aspx
ox都支持JSON 对象,将json 对象转为对应json 格式的字符串(JSON .stringify)或者将json 格式的字符串转为json 对象(JSON .parse)。 IE8+浏览器也支持JSON 对象,但是是有条件的,需要添加xhtml申明或者使用X-UA-Compatible指定为IE8或者edge模式,X-UA-Compatible要放对位置,要不有可能无效。参考:IE X-UA-Compatible meta失效分析 不过IE8+下JSON .stringify会将中文转为unicode编码(\uxxxx这种编码),所以还是推荐使用json2.js在IE浏览器下实现json 对象的序列http://www.w3dev.cn/article/20130802/IE8-xhtml-mode-support-JSON-object.aspx
ing的开始(The while(1); construct, located at the beginning of JSON text,)2,字符串前后有注释( Comments at the beginning and end of the text.)推荐json 数据提供者使用下面的1个或者2个方法防治数据执行,json 响应应该如下面这样while(1);/*{[{name:safe value 1},{name:safe value 2}, ]}*/设置为json 时jqGrid通过此方法获取数据附加的jqGrid方法要使用这些方法,你需要在下载页面勾选 Custom后再下载jqGrhttp://www.w3dev.cn/article/20130705/jqGrid-methods.aspx
本章介绍jqGrid配置datatype为 json /jsonp/ jsonstring数据类型时,如何设json 数据的读取器。3.6.5 以后的版本返回的json 格式字符串需要为标准格式的,怪异模式的会出错。这个问题主要是jQuery造成,jQuery1.4+版本要求json 数据为标准的。参考:jQuery dataType指定为json 的问题关于json 的更多信息查看这里: HERE and HERE JSON 数据源 默认jsonReader配置如下jQuery(#gridid).jqGrid({//... jsonReader : { root: rows, http://www.w3dev.cn/article/20130628/jqGrid-json-datasouce-reader-options.aspx
asp/vbscript将json 字符解析为json 对象的方法,如果asp使用jscript来编写服务器端代码操作json 字符串就简单了,vbscript需要MSScriptControl.ScriptControl或者服务器端的jscript来作为中间体才行。 vbscript将json 字符解析为json 对象的方法一,使用MSScriptControl.ScriptControl组件,请用IE浏览器运行本示例,会有安全提示,需要点击是允许创建。MSScriptControl.ScriptControl组件介绍script language=vbscriptDim sc4JsonSub http://www.w3dev.cn/article/20130408/asp-vbscript-parse-json-string-to-json-object.aspx
在csdn看到一个问题,说是asp如何制作发布webservice 。一般制作发布webservice 很少有用到asp的,用百度google搜索asp如何制作发布webservice 基本上没有asp的资料,于是改用google搜索how to create web service by asp,搜索到了Creating Web Services with ASP这篇国外的资料,网址:http://www.4guysfromrolla.com/webtech/070401-1.shtmlWeb Services in Classic ASP and in ASP.NETOne of the http://www.w3dev.cn/article/20130204/asp-create-webservice-I.aspx
http://www.w3dev.cn/article/20130204/asp-create-webservice-II.aspx
http://www.w3dev.cn/article/20130204/asp-create-webservice-III.aspx
于responseText得到的内容只有一种类型,就是字符串,然后根据需要将responseText处理成其他数据类型,如返回json 格式的字符串,eval生成json 对象什么的。如果是xml的字符串,需要使用浏览器的特殊对象,如ie的acx,firefox的DOMParser将xml字符串还原为xmldom对象。具体参考:javascript操作 xml XML和JSON 的优缺点1)XML是跨平台的,很多平台都能支持,所以采用XML数据格式时平台移植容易。缺点就是字节数比较发现,对于等效的JSON 和XML有效数据,JSON 总是小于XML。2)优点就是字节数少,容易操作。但是兼容性不是很好http://www.w3dev.cn/article/20121206/ajax-xml-json-data-format-compare.aspx
json .js文件和jquery序列化JSON 对象为键值对的方法param产生冲突,导致json .js文件中的toJSONString方法重复调用自身从而堆栈溢出出现too much recursion【firefox】/Stack Overflow【IE浏览器】错误。 产生too much recursion/Stack Overflow这个问题主要是jquery调用ajax方法时,如果参数为json 对象,jquery会调用param方法序列化json 对象为键值对,param方法中使用了for语句遍历json 对象,而json .js对object对象扩展了toJSONString方法,http://www.w3dev.cn/article/20121010/json.js-jquery-Conflict-too-much-recursion-Stack-Overflow.aspx
students[2] = I love you; var json = JSON .stringify(students,switchUpper); function switchUpper(key, value) { return value.toString().toUpperCase(); } alert(json );/scriptvar json = JSON .stringify(students, function (key,value) { http://www.w3dev.cn/article/20121009/JSON.stringify.aspx
tagrid插件使用.json 文件为数据源,通过非http协议访问【就是直接拖进浏览器查看效果】,能正常加载.json 文件并且生成datagrid数据源。但是通过http协议访问示例代码时,无法加载json 文件生成datagrid的数据源。 这个是由于服务器软件,如iis的配置MIME类型或者一些配置不正确导致的。 默认iis是没有json 文件的mime映射的,所以请求json 文件会出现404【GET请求】或者405 Method Not Allowed【POST请求】错误,导致无法加载json 文件。 解决这个问题,可以有2种办法。1)在iis中给网站添加json 文件的mime类型,内http://www.w3dev.cn/article/20120629/jquery-easyui-datagrid-datasource-json-file.aspx
le.WriteLine(Content-Type = N/A, Accept = application/json :); 12: GetAllEmployees(, contentType); 从如下所示的输出结果我们可以看出:由于服务调用请求没有指定任何媒体类型相关的报头,所以回复消息采用的是契约接口中设置的消息格式Xml。对于 后两次服务调用中,由于请求消息中分别通过Content-Type和Accept报头将期望的媒体类型设置为application/json ,所 以Json 最终作为回复消息的格式。(S1006) 1: Content-Type = N/A; Accept = http://www.w3dev.cn/article/20120523/wcf-rest-json-xml-choice.aspx
方法,而且它预设就支持 JSON 序列化。 在本文中将使用 ScriptManager 的 PageMethods,重新做一次上篇「CallBack-PageCommand和JSON 应用」文章的范例,来比较「CallBack PageCommand」及 「ScriptManager PageMethods」之间的差异。 我们先来复习上篇范例 CallBack PageCommand 的运作流程如下 客户端物件 - 1.客户端 JSON 序列化 - CallBack 呼叫伺服端 - 2.伺服服端 JSON 反序列化还原对象 - 修改对象属性- 3.伺服端 JSON 序列化 - CallBhttp://www.w3dev.cn/article/20120318/ScriptManager-EnablePageMethod-JSON.aspx
cript对象标记法,英文名称 JavaScript Object Notation(简称JSON ),是一种文字格式标记法,相较于 XML 而言,JSON 明显更为简洁。而 JSON 这种精简的数据表示方式,非常适合用于 AJAX 的数据转输。 我们使用「BasePage 撰写 PageCommand 事件 (使用 CallBack)」一文中提及的 PageCommand 来执行 AJAX,并在 PageCommand 事件中回传 JSON 字符串,客户端以 JavaScript 取得回传的 JSON 对象。 在页面上放置一个 Button 来执行 CallBack PageCommanhttp://www.w3dev.cn/article/20120318/CallBack-PageCommand-JSON-Basic.aspx
首页 上一页 [1] [2] 下一页 尾页 1/2页,每页显示30条,共46条相关记录