Dal*_*rzo 6 javascript json asp.net-web-api angularjs
我遇到了一个问题而且我没有想法,我需要一些关于原点和/或解决方案的指导:
服务器端
我添加了标准的Microsoft Web Api Controller
类" ValuesController
",如下所示:
public class ValuesController : ApiController
{
public string Get(int id){ return "value"; }
...
Run Code Online (Sandbox Code Playgroud)
客户端
在我的AngularJS Controller函数中,我有一个简单的get
$http({method:'GET',url: '/api/values/1'}).success(function(data){
$scope.value =data;
})
Run Code Online (Sandbox Code Playgroud)
HTML看起来像这样:
<input type="text" ng-model="value" />
Run Code Online (Sandbox Code Playgroud)
奇怪的是(问题)是我得到:输入中的"值"而不是值(没有引号).为了避免误解,我得到了这个:
而不是这个:
当然问题是:为什么?以及如何修复*?
*希望答案不会返回一个对象而不是一个简单的字符串:)
我的印象是,这是由于JSON格式的安全漏洞造成的.在$ http服务的文档中,有一个名为JSON Vulnerability Protection的部分,建议Angular采取一些预防措施来避免攻击.
他们建议阅读以下文章:解析一个微妙的JSON漏洞,据我所知,深入研究一个类似于你的案例.
最重要的是,我认为你必须返回一个完整的JSON对象,而不仅仅是一个字符串.另一种方法是通过执行来确保您获得JSON对象
$scope.value = JSON.parse(value)
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
4075 次 |
最近记录: |