JSON

chrome调试js-判断返回类型是否正确

字号+ 作者:H5之家 来源:H5之家 2016-06-11 11:01 我要评论( )

三年前发过一篇chrome调试js的文章,那篇文章尽管异常简单,但在各搜索引擎排名都非常高。同时最近发现jQuery学习群里很多关于jQuery ajax调用方面的问题都是因

三年前发过一篇chrome调试js的文章,那篇文章尽管异常简单,但在各搜索引擎排名都非常高。同时最近发现jQuery学习群里很多关于jQuery ajax调用方面的问题都是因为返回类型不对引起的,所以现在感觉很有必要写一篇补充文章。

我们还是以使用chrome调试ajax做介绍,其他如firefox、IE等方法也类似,但本人感觉还是chrome好使些。关于设置断点什么的我们不再多说,可以看看Google Chrome调试js入门。以前文章中举的例子就是json的,但这些天发现很多朋友不会查看返回类型是否正确,下边我们直接举例说明,如我们的后台有下边的代码:

public ActionResult getstudents() { List<Student> list = new List<Student>(); list.Add(new Student() { id = 1, name = "小李" }); list.Add(new Student() { id = 2, name = "小王" }); return Json(list, JsonRequestBehavior.AllowGet); }

使用chrome并按下F12,在Sources下找到我们的js代码。如果你单独将代码写在文件中,则点开左边相应的js文件夹找到文件后同样可以设置断点,这里不再多说。

jQuery ajax请求

从图中可看到json请求返回已经成功进入success,点击Sources左侧的Network,我们可以看到getstudents的请求

chrome ajax网络

点击getstudents,可以在Headers中看到ajax请求的返回类型,这也是我们本篇文章的重点,如此次请求返回如下:

chrome ajax头信息

如果你发现没进入success时,即可用上述方法检验返回结果的json是否正确,如果发现返回不是我们需要的类型就得修改我们的后台代码,使它返回类型符合我们的要求。在很多跨域请求中,本来返回类型就要求是jsonp,但在参数中有人写的dataType竟然是json,这种错误希望大家注意避免。点击上图的Response,我们可看到返回结果:

大家可使用jQuery学习站的json在线检测工具来验证json返回是否合格,如此次请求的返回结果检测结果如下:

json格式在线验证格式化

当然对这个简单的例子来说,你可能一下会看出返回json类型是否正确,但当返回集较大时就不太容易了。如自己手动拼json是很容易出错的,在这建议尽量不要拼json字符串来输出,很容易出问题,如在asp.net mvc 3 中建议使用ServiceStack.Text来进行序列化。没有此检验工具,要发现其中的json错误还是要花些工夫的,如果觉得工具有用的话,也欢迎和其他朋友分享哦^_^。

总结:本篇文章非常简单的介绍了下ajax请求中怎么使用chrome来快速判断请求的返回类型,提高我们调试js代码的速度。当然chrome调试js有非常多的技巧,在调试过程中大家再慢慢熟悉提升吧!

 

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

相关文章
  • 谷歌调试页面,Chrome开发者工具的实用技巧(译)

    谷歌调试页面,Chrome开发者工具的实用技巧(译)

    2016-03-15 12:01

  • JSONSchema那些事儿:基本概念

    JSONSchema那些事儿:基本概念

    2016-02-05 17:02

  • jquery each遍历json

    jquery each遍历json

    2016-01-31 16:17

  • JSON Schema 那些事儿:基本概念

    JSON Schema 那些事儿:基本概念

    2016-01-31 10:32

网友点评