【问题标题】:Meteor HTTP.call() Authorization HeaderMeteor HTTP.call() 授权头
【发布时间】:2015-03-09 09:53:20
【问题描述】:

我正在为 API 开发一个新的 accounts-*** 包,它使用授权标头而不是 access_token 参数(正如我见过的大多数其他 API/包所做的那样)。但是,我尝试的每个版本都导致返回 401。我尝试了一些变体无济于事(引号中的授权/不带引号,将 accessToken 声明为函数内的新变量等)。我错过了什么明显的东西吗?

////////////////////////////////////////////////
// packages/newApi/newApi_server.js
////////////////////////////////////////////////
// Other steps for exchanging auth code for access and refresh tokens
var getIdentity = function(accessToken){
  var accessTokenString = 'Bearer ' + accessToken;
  try {
    return HTTP.get("https://testapi.testing.com/user/info", {
      headers: {
        'Authorization': accessTokenString
      }
    }).data;
  } catch(err) {
    throw_.extend(new Error('You done goofed. ' + err.message));
  }
};

编辑:我曾尝试在 OAuth 流程中早些时候保护我的 accessToken,这破坏了身份获取。

【问题讨论】:

  • 为什么'accessTokeString'周围有单引号?此外,您在“承载”之后有一个空格 - 应该在那里吗?根据我对 API 的经验,这通常会导致错误。
  • @RamsayLanier 引号是我的换位错误;至于承载后的空间,似乎是正确的。以下是文档给出的示例:“curl --include \ --header "Authorization: Bearer example_access_token_like_135fhn80w35hynainrsg0q824hyn" "

标签: meteor oauth


【解决方案1】:

正如我在编辑中解释的那样,这是一个愚蠢的编码/加密错误。确保您的访问令牌可以正确访问。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-08-08
    • 1970-01-01
    • 1970-01-01
    • 2012-04-18
    • 1970-01-01
    相关资源
    最近更新 更多