2015-09-05 98 views
0

我可以在网络选项卡下的Chrome开发人员工具中看到XHR请求及其响应。当XHR调用在请求主体中传递JSON时,传递的参数在开发人员工具的网络选项卡下的表单数据选项卡下可见。但是,在XHR请求中发现错误有时非常耗时,因为请求主体并未显示为json。有没有办法在chrome浏览器中看到在XHR调用中传递给服务器的实际JSON?SpringMVC浏览器json请求验证

请考虑以下情况。

我们在serverend中使用SpringMVC,客户端调用服务器来检索和发布请求。假设控制器与以下PersonDto绑定。

PersonDto { 
    String name; 
    Address address; 
} 

AddressDto { 
    String street; 
    String state; 
    String country; 
} 

如果客户端以错误的json格式发出请求,则无法解析控制器。例如,如果客户端传递带有地址集合的json,它将无法将json解析为上面的Person类。如果客户端和服务器由不同的团队开发,这变得更加棘手,因为这些请求不能在开发中尽早验证。

+0

只要用JSON变量做一个'console.log()'。 %)P – loveNoHate

+0

我假设你正在将JavaScript对象(文字)与JSON混淆,并且该对象被自动编码为表单数据。在帽子的情况下,您从未拥有过JSON,也不会向服务器发送JSON。 –

+0

我们在后端使用Sprint MVC,并且在控制器中绑定了一个模型对象,以及随着请求被Sprint自动转换为模型的json。问题是客户端应用程序错误地发送请求时(对于发送预期单个对象的对象集合),它无法在服务器上解析。所以请求应该与服务器级别的有界模型对象具有相同的结构。 – user67339

回答

0
+0

邮差不会将我的请求显示为JSON,而是将它显示为一个键值对,如同在Chrome中一样。 – user67339

+0

在Postman中,选择POST(或其他方法,而不是GET),然后您可以编辑您的请求正文。而不是“表单数据”,检查“原始,然后而不是”文本“,选择”JSON(application/json)“。 –

0

Fiddler2显示用于请求被发送到服务器的JSON,否则你可以保存XHR并使用在线服务XHR JSON格式进行查看。