【问题标题】:Expecting a token named "token期待一个名为“token”的令牌
【发布时间】:2016-04-09 23:12:29
【问题描述】:

我无法弄清楚https://github.com/sahat/satellizer 出现此错误的原因

satellize.js 配置

        withCredentials: !1,
        tokenRoot: null,
        cordova: !1,
        baseUrl: "/#",
        loginUrl: "/auth/login",
        signupUrl: "/auth/signup",
        unlinkUrl: "/auth/unlink/",
        tokenName: 'token',
        tokenPrefix: "satellizer",
        authHeader: "Authorization",
        authToken: "Bearer",
        storageType: "localStorage",

app.js .config(function($authProvider) {

  $authProvider.facebook({
    clientId: '******'
  });
   $authProvider.google({
      clientId: '****'
   });


})

控制器

  $scope.socialLogin = function(provider) {
     $auth.authenticate(provider)
    .then(function(data) {

      toastr.success('You have successfully signed in with ' + provider + '!');
      $rootScope.$broadcast('session',2)
    })
    .catch(function(error) {
      if (error.error) {
        // Popup error - invalid redirect_uri, pressed cancel button, etc.
        toastr.error(error.error);
      } else if (error.data) {
        // HTTP response error from server
        toastr.error(error.data.message, error.status);
      } else {
        toastr.error(error);
      }
    });
};

这里期望一个名为 token 的 token 错误

服务在广播中被调用 此处出现 api/me 404 错误

 var app = angular.module('app');
   app.factory('Account', function($http) {
     return {
       getProfile: function() {
    return $http.get('api/me');
  },
  updateProfile: function(profileData) {
    return $http.put('api/me', profileData);
  }
   };
  });

我已经尝试了 github 页面上的所有变体,但似乎没有一个可靠的解决方案。

认为可能是因为 url 中的 # 将基本 url 更改为 /# 并得到错误。

我加了

  $locationProvider.html5Mode({
      enabled: true,
      requireBase: false
  });

这也不起作用,我做错了什么?

【问题讨论】:

标签: javascript angularjs satellizer


【解决方案1】:

我认为错误是当您从服务器返回 JSON 响应时。 JSON响应的格式应该是格式。

    { "token" : "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJ0b3B0YWwuY29tIiwiZXhwIjoxNDI2NDIwODAwLCJodHRwOi8vdG9wdGFsLmNvbS9qd3RfY2xhaW1zL2lzX2FkbWluIjp0cnVlLCJjb21wYW55IjoiVG9wdGFsIiwiYXdlc29tZSI6dHJ1ZX0.yRQYnWzskCZUxPwaQupWkiUzKELZ49eM7oWxAQK_ZXw"}

所以请检查您收到的 JSON 响应。如果您需要更多信息,请查看您提供的 GitHub 链接的 issues 选项卡。

【讨论】:

    猜你喜欢
    • 2016-02-21
    • 1970-01-01
    • 2020-05-21
    • 1970-01-01
    • 2016-08-31
    • 1970-01-01
    • 2020-08-22
    • 1970-01-01
    相关资源
    最近更新 更多