如何从Web API响应中获取JSON字符串

时间:2013-08-28 14:11:42

标签: asp.net-mvc json rest httpwebrequest

我有一个ASP.NET MVC 4应用程序,我有一个控制器,它有一个接收XHR请求并返回JSON的动作。在此操作中,我想调用WEB API,将响应作为JSON接收,并使用JSON字符串作为操作返回值。

(我不允许直接使用javascript调用WEB API,我需要通过服务器)

我设法向Web API提出请求,但我无法弄清楚如何读出JSON字符串。

这是我的方法:

  public ActionResult Index()
    {
        String ret = "";  
            HttpClient client = new HttpClient();
            client.BaseAddress = new Uri("http://localhost:8080/");

            client.DefaultRequestHeaders.Accept.Add(
                new MediaTypeWithQualityHeaderValue("application/json"));

            HttpResponseMessage response = client.GetAsync("api/stuff").Result;  
            if (response.IsSuccessStatusCode)
            {
                // How do I get the JSON string out of the response object?
                //ret = response.??
            }
            else
            {                     
            }

            return Content(ret, "application/json");
    }

1 个答案:

答案 0 :(得分:4)

这个怎么样?

string json = await response.Content.ReadAsStringAsync();