我正在基于另一个类似的应用程序构建我的应用程序。 我正在使用firebug尝试获得相同的Response / JSON。
在工作应用程序中,“响应”选项卡显示:
和“JSON”选项卡显示了几个具有关联属性的JSON对象:
在损坏的应用程序中,“响应”选项卡显示:
(它在数据周围放了一个“d”键并转义了所有的双引号)
和“JSON”选项卡只显示包含数据字符串的单个对象:
调用以返回“损坏的”JSON响应的方法是:
public static string GetMembers()
{
Member member1 = new Member();
member1.Id = 1;
member1.FirstName = "John";
member1.LastName = "Smith";
Member member2 = new Member();
member2.Id = 2;
member2.FirstName = "Bruce";
member2.LastName = "Banner";
List<Member> members = new List<Member>();
members.Add(member1);
members.Add(member2);
return new JavaScriptSerializer().Serialize(members);
}
我可以对我的方法做什么让它以与第一个应用程序相同的方式返回/显示JSON数据?
注意我没有第一个应用程序的源代码,我只是查看它在firebug中加载的页面。
答案 0 :(得分:0)
应用程序会对数据进行处理,因为将数组直接传递给客户端存在安全漏洞。请参阅此resource for more information了解原因。这就是应用程序框架的原因。我认为很多其他序列化器都需要相同的......
您唯一的选择是序列化每个对象,并手动写出对象数组。但同样,请注意这样做的漏洞。