离子http get不起作用

时间:2016-05-05 10:02:04

标签: angularjs ionic-framework

我的项目后端是用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);

希望这有助于某人

3 个答案:

答案 0 :(得分:2)

试试这个,

$http.get('http://localhost:26309/api/User/getAll/')
   .success(function(data){
       //your code
   }
    .error(function(error){
       //your code
   }

答案 1 :(得分:0)

你使用离子。你在设备上试过这个吗? 因为您永远不会通过设备localhost访问您的电脑上的服务器。您必须使用ip addressdomain name

答案 2 :(得分:0)

Localhost指向本地设备,而不是您的开发计算机。 @Simon是对的。

谢谢, 丹