0

我在前端使用Satellizer进行 JWT 身份验证。我将服务器端Node js部署在Cloud9上,客户端在 localhost 上运行。现在通过 cors 模块在服务器端启用了CORS ,并且工作正常。

相同的客户端使用 Restangular 作为服务。

 RestangularProvider.setBaseUrl('//another domain's link here');
    RestangularProvider.setRestangularFields({
  selfLink: "_links.self.href"
});

 RestangularProvider.setDefaultHeaders({'Content-Type':'application/json'});

现在这工作正常。通过 Restangular 的每个请求在节点中都是成功的。但我无法登录或注册。请求无法访问服务器端。控制台中也没有错误。我已经尝试过 这个问题 和许多其他问题。但是不能让它工作。

那么我怎样才能让卫星器为跨域工作????

编辑:另外在 satellizer 中添加此代码。

 return $http(opts)
       .success(function(response) {
               alert("success");
               console.log(response);
        shared.setToken(response);
          return response;
      })
      .error(function(data) {
          console.log(data);
               alert("error");                 
       })
       .catch(function(resp){
           console.log(resp);
           alert("catching error");
       });

我在控制台中得到了带有 null 的错误块,并且还使用 status:-1 调用了 catch 块。

在此处输入图像描述

4

0 回答 0