我的项目后端是用VS实现的,端口号为26309,我正在用记事本++中的离子实现我的前端。
我的问题是控制器无法通过$http.get("http://localhost:26309/api/User/getAll/")
检索数据。
解
我通过以下方式解决了问题:
1-在config.xml中添加权限<allow-navigation href="http://*/*"/>
2 - 安装cordova-plugin-whitelist ionic plugin add cordova-plugin-whitelist
3-control control-allow-origin extention to chrome:https://chrome.google.com/webstore/detail/allow-control-allow-origi/nlfbmbojpeacfghkpbjhddihlkkiljbi/related?hl=en-US
最后:通过在Application_start方法中将此代码添加到我的Global.asax来指定后端控制器返回的数据类型:
config.Formatters.JsonFormatter.SerializerSettings.Formatting =
Newtonsoft.Json.Formatting.Indented;
config.Formatters.Remove(config.Formatters.XmlFormatter);
希望这有助于某人
答案 0 :(得分:2)
试试这个,
$http.get('http://localhost:26309/api/User/getAll/')
.success(function(data){
//your code
}
.error(function(error){
//your code
}
答案 1 :(得分:0)
你使用离子。你在设备上试过这个吗?
因为您永远不会通过设备localhost
访问您的电脑上的服务器。您必须使用ip address
或domain name
。
答案 2 :(得分:0)
Localhost指向本地设备,而不是您的开发计算机。 @Simon是对的。
谢谢, 丹