【问题标题】:Passing X-Authentication via CURL on command line在命令行上通过 CURL 传递 X-Authentication
【发布时间】:2021-09-08 06:28:17
【问题描述】:

我正在尝试使用需要授权的 GET 来卷曲 URL,但无论我如何传递令牌,我都会返回:

{
  "response": {
    "error": "Authentication required",
    "error_code": 1
  }
}

我已经询问了我正在使用的 API 的开发人员,但我得到的只是“令牌必须包含在 X-Authorization HTTP 标头中”,这并没有告诉我我做错了什么.

这是我尝试过的命令之一的示例:

curl -X GET -H 'Content-Type: application/json' -H "Authorization: Bearer MyTokenGoesHere" -k https://example.com/SomeFolder/endofAPIURL?ArgumentOne=foo&ArgumentTwo=bar

我尝试了多种方法来传递令牌,但显然我做错了,因为它们似乎都没有传递令牌,因为我得到的是“需要身份验证”而不是不正确/无效。

以下是我尝试传递令牌的所有方式:

-H "Authorization: MyTokenGoesHere"
-H "Authorization: Basic MyTokenGoesHere"
-H "Authorization: Bearer MyTokenGoesHere"
-H "Authorization: Oauth MyTokenGoesHere"
-H "X-Auth-Token: MyTokenGoesHere"
-H "X-Auth-Token: Basic MyTokenGoesHere"
-H "X-Auth-Token: Bearer MyTokenGoesHere"
-H "X-Auth-Token: Oauth MyTokenGoesHere"

所有这些传递令牌的不同方式均取自本网站上的各种帖子。

我觉得我遗漏了一些明显的东西,但我就是看不到它。

【问题讨论】:

    标签: json authentication curl token


    【解决方案1】:

    事实证明,API 使用的是自定义标头,但没有在任何地方记录它。提供的文档还使用了 X-Auth-Token(我认为它本身是自定义的,但可能是错误的),这就是我尝试这样做的原因。

    在我的特殊情况下,我需要的是-H "AuthTo: MyTokenGoesHere"

    【讨论】:

      猜你喜欢
      • 2018-03-14
      • 2016-07-21
      • 1970-01-01
      • 2014-10-17
      • 2014-11-05
      • 2012-11-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多