0

我正在基于另一个类似的应用程序构建我的应用程序。我正在使用萤火虫试图获得相同的响应/JSON。

在工作应用程序中,“响应”选项卡显示: 在此处输入图像描述

“JSON”选项卡显示了几个带有关联属性的 JSON 对象: 在此处输入图像描述

在损坏的应用程序中,“响应”选项卡显示:( 在此处输入图像描述
它在数据周围放置了一个“d”键并转义了所有双引号)

并且“JSON”选项卡只显示一个包含数据字符串的对象 d: 在此处输入图像描述

被调用以返回“损坏”的 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 中加载的页面。

4

1 回答 1

0

该应用程序在数据周围放置广告,因为将数组直接传递给客户端存在安全漏洞。有关原因的更多信息,请参阅此资源。这就是应用程序框架这样做的原因。我认为许多其他序列化程序需要相同的...

您唯一的选择是序列化每个对象,并手动写出对象数组。但同样,请注意这样做的漏洞。

于 2013-09-19T16:21:37.483 回答