ASP.NET Web Api函数以JSON返回简单字符串。
当我从angularjs调用此函数时,得到的是带引号的字符串,而不是简单的字符串:
return $http.post('/api/orders', data).then(function (results) {
return result.data;
result.data是"my string"
,带引号。这是因为返回的消息是字符串基元,而不是对象。如何适当地应对呢?使用js函数删除引号?强迫服务器返回对象而不是原始对象?一些特殊的配置?...?
更新:
服务器使用Web Api控制器,该控制器返回一个字符串:
public IHttpActionResult SaveOrder() {return Ok("this is a test");}
结果相同:
public string SaveOrder() {return "this is a test";}
问题在于返回的JSON值不是对象,它直接是字符串基元。
我有同样的问题。发生这种情况是因为您string
要从控制器中返回,所以我认为它看起来像这样:
public string ControllerMethod(..) {...}
您应该返回HttpResponseMessage
而不是string
,对象将如下所示:
public HttpResponseMessage ControllerMethod()
{
var myString = "my string";
return new HttpResponseMessage()
{
Content = new StringContent(myString, Encoding.UTF8, "text/html")
};
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句