Javascript 如何在angularjs中使用url进行身份验证

Javascript 如何在angularjs中使用url进行身份验证,javascript,angularjs,Javascript,Angularjs,{{myWelcome}} var-app=angular.module('myApp',[]); app.controller('myCtrl',函数($scope,$http,Base64){ $http.defaults.headers.common={“访问控制请求头”:“接受、来源、授权”}; $http.defaults.headers.common['Authorization']='Basic'+Base64.encode('admin'+':'+'admin'); $http(


{{myWelcome}}
var-app=angular.module('myApp',[]);
app.controller('myCtrl',函数($scope,$http,Base64){
$http.defaults.headers.common={“访问控制请求头”:“接受、来源、授权”};
$http.defaults.headers.common['Authorization']='Basic'+Base64.encode('admin'+':'+'admin');
$http({方法:“获取”,
url:“http://10.132.32.212:8181/restconf/operational/network-拓扑:网络拓扑/“,
接受:“应用程序/json”,
事实上,
}).然后(函数mySucces(响应){
$scope.myWelcome=response.data;
},函数myError(响应){
$scope.myWelcome=response.statusText;
});
});

您使用了未定义的Base64服务。 我将其添加为CDN库

导致

<!DOCTYPE html>
<html>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/angular-base64/2.0.5/angular-base64.js"></script>
<body>

<div ng-app="myApp" ng-controller="myCtrl"> 



<h1>{{myWelcome}}</h1>

</div>

<script>
var app = angular.module('myApp', ['base64']);
app.controller('myCtrl', function($scope, $http, $base64) {
$http.defaults.headers.common = {"Access-Control-Request-Headers": "accept, origin, authorization"}; 
$http.defaults.headers.common['Authorization'] = 'Basic ' + $base64.encode('admin' + ':' + 'admin');
$http({ method : "GET",
    url : "http://10.132.32.212:8181/restconf/operational/network-topology:network-topology/",
    Accept: "application/json",
    withCredentials: true,
    }).then(function mySucces(response) {
      $scope.myWelcome = response.data;
    }, function myError(response) {
      $scope.myWelcome = response.statusText;
  });
});
</script>
</body>
</html>

{{myWelcome}}
var-app=angular.module('myApp',['base64']);
app.controller('myCtrl',函数($scope,$http,$base64){
$http.defaults.headers.common={“访问控制请求头”:“接受、来源、授权”};
$http.defaults.headers.common['Authorization']='Basic'+$base64.encode('admin'+':'+'admin');
$http({方法:“获取”,
url:“http://10.132.32.212:8181/restconf/operational/network-拓扑:网络拓扑/“,
接受:“应用程序/json”,
事实上,
}).然后(函数mySucces(响应){
$scope.myWelcome=response.data;
},函数myError(响应){
$scope.myWelcome=response.statusText;
});
});
普朗克:

从服务器()加载此代码,就可以开始了。


{{data1[“拓扑id”]}
{{data2[“节点id”]}
{{data3[“tp id”]}
var app=angular.module('list',['base64']);
app.controller('ListCtrl',函数($scope,$http,$base64){
$http.defaults.headers.common={“访问控制请求头”:“接受、来源、授权”};
$http.defaults.headers.common['Authorization']='Basic'+$base64.encode('admin'+':'+'admin');
$http({
方法:“GET”,
网址:'http://10.132.32.212:8181/restconf/operational/network-拓扑:网络拓扑/',
contentType:'application/json;charset=utf-8',
}).成功(功能(tdata){
$scope.data=tdata;
});
});

响应是什么?你有401状态码吗?没有,我没有得到任何东西,它只显示了{{myWelcome}}表达式。如果你在html页面中看到了“{{myWelcome}}”,那么就有一个严重的错误。检查控制台是否有错误您是否检查了控制台网络选项卡?谢谢您的支持,但现在我也无法获取数据。正在显示空的浏览器您是说在浏览器中吗?这是因为脚本不是从“您的”服务器()加载的。现在我正在获取xml数据。我可以将其转换为json吗?是否有任何解决方案是“返回xml”?如果是这样,您能否更改服务器实现,使其返回JSON而不是XML?
var app = angular.module('myApp', ['base64']);
<!DOCTYPE html>
<html>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/angular-base64/2.0.5/angular-base64.js"></script>
<body>

<div ng-app="myApp" ng-controller="myCtrl"> 



<h1>{{myWelcome}}</h1>

</div>

<script>
var app = angular.module('myApp', ['base64']);
app.controller('myCtrl', function($scope, $http, $base64) {
$http.defaults.headers.common = {"Access-Control-Request-Headers": "accept, origin, authorization"}; 
$http.defaults.headers.common['Authorization'] = 'Basic ' + $base64.encode('admin' + ':' + 'admin');
$http({ method : "GET",
    url : "http://10.132.32.212:8181/restconf/operational/network-topology:network-topology/",
    Accept: "application/json",
    withCredentials: true,
    }).then(function mySucces(response) {
      $scope.myWelcome = response.data;
    }, function myError(response) {
      $scope.myWelcome = response.statusText;
  });
});
</script>
</body>
</html>