Tag: json

MVC控制器:从HTTP正文获取JSON对象?

我们有一个MVC(MVC4)应用程序,有时可能会从第三方获取JSON事件发送到我们的特定URL(“http://server.com/events/”)。 JSON事件在HTTP POST的主体中,并且主体严格为JSON( Content-Type: application/json – 不是在某些string字段中带有JSON的表单发布)。 我怎样才能接收控制器的身体内的JSON身体? 我尝试了以下,但没有得到任何东西 [编辑] :当我说没有得到任何东西,我的意思是说,无论我是否将其定义为Object或string ,jsonBody始终为空。 [HttpPost] // this maps to http://server.com/events/ // why is jsonBody always null ?! public ActionResult Index(int? id, string jsonBody) { // Do stuff here } 请注意,我知道如果我声明强types的input参数的方法,MVC做了整个parsing和过滤即 // this tested to work, jsonBody has valid json data // that I can deserialize using JSON.net […]

检查键是否存在,并使用Python迭代JSON数组

我有一堆来自Facebookpost的JSON数据,如下所示: {"from": {"id": "8", "name": "Mary Pinter"}, "message": "How ARE you?", "comments": {"count": 0}, "updated_time": "2012-05-01", "created_time": "2012-05-01", "to": {"data": [{"id": "1543", "name": "Honey Pinter"}]}, "type": "status", "id": "id_7"} JSON数据是半结构化的,全部不一样。 以下是我的代码: import json str = '{"from": {"id": "8", "name": "Mary Pinter"}, "message": "How ARE you?", "comments": {"count": 0}, "updated_time": "2012-05-01", "created_time": "2012-05-01", "to": {"data": [{"id": […]

为什么这个PHP调用json_encode默默无闻 – 无法处理单引号?

我有一个名为$post的stdClass对象,当通过print_r()转储时,返回以下内容: stdClass Object ( [ID] => 12981 [post_title] => Alumnus' Dinner Coming Soon [post_parent] => 0 [post_date] => 2012-01-31 12:00:51 ) 在此对象上调用json_encode()结果会导致以下结果: { "ID": "12981", "post_title": null, "post_parent": "0", "post_date": "2012-01-31 12:00:51" } 我假设单引号的东西导致json_encode呛,但我不知道需要什么格式来逃避。 有任何想法吗? 编辑:修正代码示例中的不匹配。 我正在运行PHP版本5.3.8 编辑2:直接编码对象后,我做到了这一点: echo json_last_error() == JSON_ERROR_UTF8; 这打印1 ,这意味着发生以下错误:“格式错误的UTF-8字符,可能错误编码”。 json_last_error() 编辑3:在post标题上调用utf8_decode()导致以下结果:“校友?晚餐即将来临”。 这些数据是从MySQL数据库中提取的,特别是文章标题是UTF-8编码的文本字段。 也许这个单引号是不正确的编码? 事情是,我有一个SQLgraphics用户界面的应用程序,它看起来是正确的。

将entity framework对象序列化为JSON

看起来,使用WCF的本地DataContractJsonSerializer或ASP.NET的本地JavaScript序列化程序将entity framework对象序列化为JSON是不可能的。 这是由于序列化器拒绝的引用计数问题。 我也试过Json.NET ,它也没有具体的引用计数问题。 编辑: Json.NET现在可以序列化和反序列化entity framework实体 。 我的对象是entity framework对象,重载执行额外的业务function(如身份validation等),我不想装饰这些类与特定于平台的属性等,因为我想呈现一个平台无关的API 。 我实际上在http://bloggingabout.net/blogs/program.x/archive/2009/03/18/wcf-json-serialization-woes.aspx上写了个博客。 我错过了什么明显的东西?

在Python中,json序列化是如何比yaml序列化更快的呢?

我有严重依赖yaml进行跨语言序列化的代码,并在加速某些东西的同时,我发现yaml与其他序列化方法(例如pickle,json)相比,速度非常慢。 所以真正打动我的是,当输出几乎相同时,json的速度要快得多。 >>> import yaml, cjson; d={'foo': {'bar': 1}} >>> yaml.dump(d, Dumper=yaml.SafeDumper) 'foo: {bar: 1}\n' >>> cjson.encode(d) '{"foo": {"bar": 1}}' >>> import yaml, cjson; >>> timeit("yaml.dump(d, Dumper=yaml.SafeDumper)", setup="import yaml; d={'foo': {'bar': 1}}", number=10000) 44.506911039352417 >>> timeit("yaml.dump(d, Dumper=yaml.CSafeDumper)", setup="import yaml; d={'foo': {'bar': 1}}", number=10000) 16.852826118469238 >>> timeit("cjson.encode(d)", setup="import cjson; d={'foo': {'bar': 1}}", number=10000) 0.073784112930297852 PyYaml的CSafeDumper和cjson都是用C语言编写的,所以它不是像C vs […]

如何序列化没有格式的JObject?

我有一个JObject (我使用Json.Net),我用LINQ到JSON构build(也由同一个库提供)。 当我在JObject上调用ToString()方法时,它将输出格式为JSON的结果。 如何将格式设置为“无”?

为什么$ .getJSON默默地失败?

当返回的数据不是有效的JSON时,jQuery的$.getJSON静静地失败似乎非常不方便。 为什么这是无声的失败实施? 什么是最简单的方式来执行更好的失败行为getJSON(例如抛出一个exception, console.log()或其他)?

Uncaught TypeError:不能使用'in'运算符来search中的'length'

Uncaught TypeError: Cannot use 'in' operator to search for 'length' in " 这是我收到的错误,当我尝试做一个$ .each到这个JSON对象: {"type":"Anuncio","textos":["Probando esto","$ 20150515"],"submit":"codParameters?___DDSESSIONID\u003d14EA4721A904D6DD71591156996E29F7%3A%2FMobilTest"} 我也试图用stringify做同样的事情,但是我收到了同样的错误: {\"type\":\"Anuncio\",\"textos\":[\"Probando esto\",\"$ 20150515\"],\"submit\":\"codParameters?___DDSESSIONID\\u003d06CBEC9D1A53616EFF703A8C71FBC2B4%3A%2FMobilTest\"}" 如果我从对象中删除参数___DDSESSIONID\\u003d06CBEC9D1A53616EFF703A8C71FBC2B4%3A%2FMobilTest 为什么会发生这种情况? 提前致谢。

在使用GSon的android中@SerializedName注释的基本用途是什么?

任何人都可以告诉我什么是使用GSON的@SerializedName注释的基本目的 给我一个不同的例子。 我已经检查了不同的网站,但我不明白什么是使用它的主要目的。

我如何使用JSON数据填充select框的选项?

我需要根据select的国家来喂养城市。 我做了编程,但不知道如何将JSON数据放入select框。 我尝试了几种使用jQuery的方法,但都没有成功。 我得到的回应(如果需要,我可以以不同的方式进行格式化): ["<option value='Woodland Hills'>Woodland Hills<\/option>","<option value='none'>none<\/option>","<option value='Los Angeles'>Los Angeles<\/option>","<option value='Laguna Hills'>Laguna Hills<\/option>"] 但是,我怎样才能把这些数据作为选项在HTML <select></select>标签中? 我试过的代码是: <form action="" method="post"> <input id="city" name="city" type="text" onkeyup="getResults(this.value)"/> <input type="text" id="result" value=""/> <select id="myselect" name="myselect" ><option selected="selected">blank</option></select> </form> </div> <script> function getResults(str) { $.ajax({ url:'suggest.html', type:'POST', data: 'q=' + str, dataType: 'json', success: function( json ) { […]