【发布时间】:2018-06-28 23:29:22
【问题描述】:
我想从我的 api 中获取模型。
为此我使用方法:
[HttpGet]
public MyModel GetModel()
{
MyModel model = new MyModel() { ... };
return model;
}
如何获得角度模型结果以及如何将MyModel 映射到我的角度模型?
我有以下几点:
getModel() {
var url = '/MyController/GetModel/';
this.http.get(url)
.map((data: Response) => {
return data.json() as MyModel;
})
.toPromise().then(x => {
this.myModel = x;
})
}
我在我的组件的ngOnInit 中调用它。
但我收到一个错误:
Uncaught (in promise): SyntaxError: JSON.parse: unexpected end of data at line 1 column 1 of the JSON data
我的角度请求有什么问题?
【问题讨论】:
-
请检查您的回复是否为有效的 json - jsonlint。
-
您使用的是哪个版本的 Angular?如果它是 4.3+ 并且您使用的是 HttpClient,那么您在代码示例中使用的是旧方法。
-
这是 Angular 5,我正在使用
Http@Sergey -
这个链接应该能帮到你stackoverflow.com/questions/22875636/…
-
@Avinash 根据我上面的代码,我返回的是对象而不是 json。我更改了返回 json 的方法,例如。
public JsonResult GetModel() { MyModel myModel = new MyModel() {..}; var result = JsonConvert.SerializeObject(myModel); return Json(result, JsonRequestBehavior.AllowGet); }但现在 Angular 请求甚至没有触发
标签: angular asp.net-web-api angular5