Web服务 – 无效的JSON原语:id

Web服务 – 无效的JSON原语:id,第1张

概述我无法使以下功能正常工作.似乎是序列化它错了.这是关于不同数据变体的第5次迭代.我最初只是像在WCF上工作的那样做数据:{‘id’:id},但是与ASMX一样,它不工作.看起来它将数据串行化为id = 1234而不是id:1234,但我对此很新.任何帮助将不胜感激.哦,我可以直接在浏览器中调用服务,并且正确地返回数据,所以我知道这不是服务. function getVentID(id) { 我无法使以下功能正常工作.似乎是序列化它错了.这是关于不同数据变体的第5次迭代.我最初只是像在WCF上工作的那样做数据:{‘ID’:ID},但是与ASMX一样,它不工作.看起来它将数据串行化为ID = 1234而不是ID:1234,但我对此很新.任何帮助将不胜感激.哦,我可以直接在浏览器中调用服务,并且正确地返回数据,所以我知道这不是服务.
function getVentID(ID) {    //look up ID in database and get VentID    alert('ID: ' + ID);    var Jsdata = { "ID": + ID}    $.AJAX({        type: 'POST',ContentType: 'application/Json; charset=utf-8',url: 'services/UserService.asmx/getVentID',data: Jsdata,dataType: 'Json',success: function (msg) {            alert(msg.d);        },error: function (a,b,c) {            alert('Error: ' + a.toString() + ' ' + b.toString() + " " + c.toString());        }    });}

附:我知道有10个相同的问题,但没有一个可以找到或者对我有用的答案.

解决方法@H_403_8@ 最简单的修复方法是将开始var Jsdata的行更改为:
var Jsdata = '{ID:' + ID + '}';

问题是jquery将Jsdata编码为表单数据,而不是Json. dataType参数影响响应如何解析,而不是如何对POST数据进行编码.

据我所知,jquery中没有任何JsON序列化代码.显然是John Resig suggests using Douglas Crockford’s json2.js.

要使用它,请为Json.Js添加脚本引用,然后:

var Jstext = JsON.stringify(Jsdata,null,2);
总结

以上是内存溢出为你收集整理的Web服务 – 无效的JSON原语:id全部内容,希望文章能够帮你解决Web服务 – 无效的JSON原语:id所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/1089824.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-27
下一篇2022-05-27

发表评论

登录后才能评论

评论列表(0条)

    保存