尝试在angularJS中获得基本身份验证工作

时间:2015-02-18 20:53:36

标签: javascript angularjs spring

我有一个支持基本身份验证的RESTful后端服务器。我想在angularJS文件中实现一个GET请求,以从服务器获取一些数据。

代码:

 angular.module('MyApp', [])
   .controller('MyCtrl',function ($scope, $http) {
         var userheader= btoa('username' + ':' + 'userpassword');

           $scope.getData=  function (){

            var req = {
                method: 'GET',
                url: 'https://localhost:8000/data/',
                headers: { 'Authorization': 'Basic ' + userheader }
                };

     $http(req)
      .success(function(data) {
      $scope.mydata = data;
      }).error(function(){
           throw new Error('Somthing went wrong');
      });

 };
 });

当我调用函数' getData()'时,它总是给我错误" No' Access-Control-Allow-Origin'标题出现在请求的资源上#34;。

2 个答案:

答案 0 :(得分:0)

您的REST服务器需要支持CORS requests才能响应客户端生成的请求。

您的服务器是使用哪个框架构建的?

答案 1 :(得分:0)

在不受信任的客户端应用程序(JS或移动设备)中使用HTTP基本身份验证(甚至通过TLS)通常是一个坏主意(安全性明智)。您之所以没有使用Token Authentication for Single Page Applications