梦若夕阳海
穷其一生的追求

最近在做WebApi和Andriod接口的对接,中途出现一个问题就是返回格式的问题。由于之前使用WebService的时候使用的一直都是json的序列化和反序列话格式,所以一开始在webapi中通样使用格式,但结果却是Andriod那端始终获取不到正确的json格式数据,经过大量的资料查询之后才发现问题,那就是Webapi和webservice的不同之处,webapi默认的返回数据格式是xml的格式,所以Andriod的那段是获取不到正确的json格式数据的,那我们应该怎样才能获取到正确的数据格式呢?其实很简单,下面我贴出一段代码:

 [HttpGet]
        public HttpResponseMessage GetMessageInfo(string requestData)
        {
            try
            {
 
               string s= "{\"code\":\"1\",\"messge\":\"成功\"}";
               HttpResponseMessage result = new HttpResponseMessage { Content = new StringContent(s, Encoding.GetEncoding("UTF-8"), "application/json") };
               return result;
            }
            catch (Exception ex)
            {
                string s = "{\"code\":\"0\",\"messge\":\"失败," + ex.Message + "\"}";
                HttpResponseMessage result = new HttpResponseMessage { Content = new StringContent(s, Encoding.GetEncoding("UTF-8"), "application/json") };
                return result;
            }
        }

  很简单,把原有的直接json序列化格式换成HttpResponseMessage的返回方式就Ok了。

posted on 2015-08-31 16:34  梦若夕阳海  阅读(1029)  评论(8编辑  收藏  举报