javascript - 如何使用 Angularjs 和 PhoneGap 向 Web-Api 发送 GET 请求?

标签 javascript angularjs cordova asp.net-web-api

我是 Angularjs 和 PhoneGap 的新手。我正在尝试使用 Angularjs 和 PhoneGap 向我的 Web-Api 2 项目发送 get 请求,但出现错误。它适用于每个浏览器。

我的代码是:

taxiConceptControllers.controller('loginCtrl', ['$scope', '$routeParams', 'loginService', '$http',
 function ($scope, $routeParams, loginService, $http) {
  $scope.loginProvider = loginService.url;
  $scope.intLoginProvider = function () {
      console.log("call");
      $http({
          headers: {
              'Content-Type': 'application/x-www-form-urlencoded'
          },
          method: "GET",
          url: 'http://localhost:15229/api/values',
      }).success(function (userData) {
          console.log(userData);
      }).error(function (data, status, headers, config) {
          console.log('error');
      });
  };
}]);

错误:

enter image description here

我的 web-Api 2 支持 Cross。

它将返回 JSON 格式结果,并且它将是 ["value1","value2"] 但我收到错误。

我正在使用:

  • 带有 Windows Phone 8 SDK 的 Visual Studio 2013 Ultimate
  • Angularjs 1.2.14
  • PhoneGap 2.9.1

更新1:

我把这些行:

     console.log(status);
     console.log(headers);
     console.log(config);  

输出是:

     404
      function(c){a||(a=nc(b));return c?a[O(c)]||null:a}
[object Object]

更新 2: enter image description here

有关我的错误的更多信息。

更新3:

我的 Index.html:

    <!DOCTYPE html>
    <html lang="en" ng-app="taxiConceptApp">
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
        <meta name="format-detection" content="telephone=no" />
        <meta name="viewport" content="user-scalable=no, initial-scale=1, maximum-scale=1, minimum-scale=1, width=device-width, height=device-height, target-densitydpi=device-dpi" />
        <link rel="stylesheet" type="text/css" href="css/index.css" />
        <link href="css/bootstrap.min.css" type="text/css" rel="stylesheet" />
        <link href="css/bootstrap-theme.min.css" type="text/css" rel="stylesheet" />
        <link href="css/app.css" rel="stylesheet" />
        <title>Hello World</title>


    </head>
    <body>

    <div id="contnr" ng-view>
    </div>

    <script type="text/javascript" src="cordova.js"></script>
    <script type="text/javascript" src="js/index.js"></script>
    <script type="text/javascript">
        app.initialize();
    </script>

    <script type="text/javascript" src="js/jquery-2.1.0.min.js"></script>
    <script type="text/javascript" src="js/bootstrap.min.js"></script>
    <script type="text/javascript" src="js/angular.min.js"></script>
    <script src="js/angular-route.js"></script>



    <script src="js/app.js"></script>

    <script src="js/service/appservice.js"></script>
    <script src="js/service/loginservice.js"></script>

    <script src="js/controllers/loginctrl.js"></script>
</body>

</html>

我的 App.js 是:

var taxiConceptControllers = angular.module('taxiConceptControllers', []);

var taxiConceptApp = angular.module('taxiConceptApp', [
  'ngRoute',
  'taxiConceptControllers'
]);

var onDeviceReady = function() {
    angular.bootstrap(document, ['taxiConceptApp']);
};
document.addEventListener('deviceready',
onDeviceReady);

taxiConceptApp.config(['$routeProvider',
  function ($routeProvider) {
      $routeProvider.
        when('/Login', {
            templateUrl: 'Templates/login.html',
            controller: 'loginCtrl'
        }).
        when('/phones/:phoneId', {
            templateUrl: 'partials/phone-detail.html',
            controller: 'PhoneDetailCtrl'
        }).
        otherwise({
            redirectTo: '/Login'
        });
  }]);

Login.Html 是:

<div ng-controller="loginCtrl" ng-init="intLoginProvider()">
    <h1>asdasads</h1>
    {{loginProvider}}
</div>

我的解决方案资源管理器是:

enter image description here

我使用 PhoneGap 2.9.1 并为 Windows Phone 8 构建它

最佳答案

您是否配置了 config.xml 文件以将您的域列入白名单?这里有关于 access tag 的文档对于 config.xml

关于javascript - 如何使用 Angularjs 和 PhoneGap 向 Web-Api 发送 GET 请求?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22152211/

相关文章:

javascript - 如何有条件地隐藏操作表按钮之一?

javascript - android系统: Transformer Prime上的 "touchmove"事件

javascript - Cordova - 如何修改 webview 标志?

javascript - Cordova 中从 Web 到设备文件系统的目录递归复制

javascript - var foo = bar&& bar.getSomething(); 的用法在 JavaScript 中

javascript - 如何通过Javascript检查完全打开的窗口?

javascript - React Navigation如何从堆栈导航内部隐藏标签栏

angularjs - 跨源请求被阻止 : The Same Origin Policy disallows reading the remote resource at . ....

javascript - 如何将 Angular 变量注入(inject) JavaScript 变量?

javascript - 如何将 jQuery 模板集成到 React App 中