如何在Unity中读取JSON响应?

时间:2015-07-18 10:30:26

标签: c# json unity3d monodevelop

我是Unity的新手,我一直在尝试使用C#从我的RESTful API读取JSON响应。以下是我用LitJson尝试的内容:

JsonData jsonvale = JsonMapper.ToObject(www.text);

string parsejson;
parsejson = jsonvale["myapiresult"].ToString();

我的JSON回复是{"myapiresult":"successfull"}

无论出于何种原因,它目前都无法运作。我不知道如何解决它。

我还找到了JSON.NET的付费插件,但我不确定它是否能解决我的问题。

1 个答案:

答案 0 :(得分:1)

您不需要购买任何付费插件才能在此使用JSON.NET。您可以创建一个为响应建模的类,也可以反序列化为动态对象。

前者的例子:

using Newtonsoft.Json;
// ...
class Response
{
    [JsonProperty(PropertyName = "myapiresult")]
    public string ApiResult { get; set; }
}

void Main()
{
    string responseJson = "{\"myapiresult\":\"successfull\"}";
    Response response = JsonConvert.DeserializeObject<Response>(responseJson);
    Console.WriteLine(response.ApiResult);
    // Output: successfull
}

......而后者:

using Newtonsoft.Json;
// ...
void Main()
{
    string responseJson = "{\"myapiresult\":\"successfull\"}";
    dynamic response = JsonConvert.DeserializeObject(responseJson);
    Console.WriteLine(response.myapiresult.ToString());
    // Output: successfull
}