Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/369.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 角度:处理到登录页面的重定向_Javascript_Angularjs_Redirect_Login - Fatal编程技术网

Javascript 角度:处理到登录页面的重定向

Javascript 角度:处理到登录页面的重定向,javascript,angularjs,redirect,login,Javascript,Angularjs,Redirect,Login,我从角度出发,完全迷路了 首先,我调用一个简单的Rest GET请求。问题是,目标位于外部登录页面后面。因此,我的请求被重定向到外部页面,我的应用程序失败 我想要的是打开我重定向到的这个页面。登录成功后,我应该被重定向到第一个请求的页面(但我想这应该由外部页面完成) 到目前为止,我的代码还不是很先进,但它是: var app = angular.module('webUI', []) app.controller('Rest', function($scope, $http) { $ht

我从角度出发,完全迷路了

首先,我调用一个简单的Rest GET请求。问题是,目标位于外部登录页面后面。因此,我的请求被重定向到外部页面,我的应用程序失败

我想要的是打开我重定向到的这个页面。登录成功后,我应该被重定向到第一个请求的页面(但我想这应该由外部页面完成)

到目前为止,我的代码还不是很先进,但它是:

var app = angular.module('webUI', [])
app.controller('Rest', function($scope, $http) {
    $http.get('https://test/rest/monitoring')
        .then(function successCallback(response) {
                $scope.rest = response.data;
            }, function errorCallback(response){

            });
});
有没有一个简单的角度函数,我错过了,这将做什么,我在寻找

编辑: 以下是我在浏览器控制台(Chrome->F12)中看到的错误消息:


从“”重定向到“”已被CORS策略阻止:请求的资源上不存在“访问控制允许来源”标头。因此不允许访问源“null”。

您必须将重定向的url设置为$location.path(“/someNewPath”);;中的successCallback函数;。 您必须将$location的依赖项注入控制器

      var app = angular.module('webUI', [])
      app.controller('Rest', function ($scope, $http, $location) {
          $http.get('https://test/rest/monitoring')
              .then(function successCallback(response) {
                  $scope.rest = response.data;
                  $location.path('/someNewPath');
              }, function errorCallback(response) {

              });
      });

你应该使用角度布线, 明白为什么了吗 这里有一个很好的例子,一旦你配置了你的路线,你就可以这样做:

var app = angular.module('webUI', [])
app.controller('Rest', function($scope, $http) {
    $http.get('https://test/rest/monitoring')
        .then(function successCallback(response) {
                $scope.rest = response.data;
                $state.go('login');
            }, function errorCallback(response){

            });
});

谢谢你的快速回复。但是我如何获得我将重定向到的URL呢。在我的例子中,“/someNewPath”并不总是相同的。在哪里可以提取重定向到的URL?此外,我还尝试了您的解决方案,并希望重定向到/someNewPath。它所做的只是将“#/someNewPath”添加到我的实际URL,而不是重定向到某个地方。只有在我把这一行添加到我的“errorCallback”中后,它才起作用。我编辑了我的第一篇文章,并从我的浏览器控制台(Chrome->F12)添加了错误消息,您可以在App_Start文件夹webapiconfig.cs文件中使用以下行代码。HttpConfiguration配置;var cors=新的EnableCorsAttribute(“,”,“*”);配置使能cors(cors);我不知道路由将如何帮助我,因为它似乎只对本地资源起作用。但如果这是可能的,我如何才能得到我将被重定向到的URL,并在我的路由规则中使用它?据我所见,路由是基于固定链接的,并打开本地资源。