我的网络服务响应有mimetype:" application / json"和我的JSON输出没有间距,像这样
{"Data":{"Item":"123","Timestamp":"2011-11-24T17:50:43"}}
当JSON应该像这样输出
{
"Data":{
"Item":"123",
"Timestamp":"2011-11-24T17:50:43"
}
}
我有什么方法可以修复JSON格式,所以它看起来像#2?
答案 0 :(得分:23)
我不会更改Web服务写出的格式,但是如果您想将其格式化为诊断,则可以使用Json.NET非常简单地执行此操作:
JObject json = JObject.Parse(text);
string formatted = json.ToString();
结果自动格式化。您可以将其放入一个小工具 - 桌面工具或某个网页。 (如果已经有在线JSON格式化器,我不会感到惊讶,尽管显然你需要小心格式化敏感数据。)
答案 1 :(得分:2)
如果你的json的根元素是一个数组,Jon的答案似乎不起作用。使用JToken而不是JObject为我修复了这个问题。作为字符串的扩展方法,它看起来像:
public static string FormatJson(this string json)
{
return JToken.Parse(json).ToString();
}
答案 2 :(得分:-1)
如果你从Firefox调用你的服务,这个漂亮的插件会为你美化JSON:JSONView
我还习惯使用此网站格式化和验证任何JSON:JSON Formatter