cURL 错误无法解析主机“承载”

red*_* 87 2 curl

我正在尝试连接到此处找到的 Adob​​e Analytics

我设法使用以下请求生成了一个身份验证令牌:

curl -i -v " https://api.omniture.com/token " -u 'my-user' -d "grant_type=client_credentials"

然后我复制返回的整个对象,它看起来像这样:

{
  "access_token": "some-really-long-access-token",
  "expires_in": 3600,
  "token_type": "bearer",
  "scope": "livestream",
  "success": true
}
Run Code Online (Sandbox Code Playgroud)

并将其粘贴到以下 cURL 中:

curl --location --compressed --header “授权:承载 [{"access_token":"some-really-long-access-token","expires_in":3600,"token_type":"bearer","scope": "livestream","success":true}]” [ https://livestream.adobe.net/api/1/stream/myendpoint]

我得到的错误是:

Couldn't resolve host 'Bearer'
Run Code Online (Sandbox Code Playgroud)

我对 cURL 还很陌生,所以不确定这里是否有明显的错误?很可能取决于我发送数据的方式......

编辑

在下面写的答案之后,这是我收到的错误消息:

curl: (6) Couldn't resolve host 'Bearer'
curl: (6) Couldn't resolve host 'some-really-long-auth-key
invalid authorization header
Run Code Online (Sandbox Code Playgroud)

hme*_*ia1 5

好的,您需要在标题中传递的部分"some-really-long-access-token"

例子:

curl --compressed --header “授权:持有一些真正长的访问令牌” “https://livestream.adobe.net/api/1/stream/myendpoint”

所以只需要注意".

  • 不一样 "
  • 从 HTML、Rich text 或代码块以外的其他内容复制/粘贴时,最好检查一下

编辑:

您的问题被标记为php,但您的示例使用的是命令行,因此,请确保使用以下几点格式化您的命令:

首先也是最重要的:

在此处输入图片说明

其他需要检查的一般事项:

  • 一个标头是这样传递的: -H "Header-name: Header-Value"

    • 因此,如果我的访问令牌是29035-97v657zyr8qk966y143k2v0p365460xbd1pvk9p6 那么我的标头参数将是这样的:
      • -H "Authorization: Bearer 29035-97v657zyr8qk966y143k2v0p365460xbd1pvk9p6"
  • 您可以明确指定要cURL使用的 url --url。我通常不会这样做,因为如果一切都正确,则不需要这样做,但它可能有助于改进错误消息。

    • 所以我的 URL 参数是这样的:
      • --url "https://livestream.adobe.net/api/1/stream/myendpoint"
  • 确保如上所述不要使用左右双引号,而是"使用计算机键盘上的标准。标准" 是 shell 用来包含参数的东西