我需要在Clojure中使用http-kit进行API调用,其中它使用API密钥进行授权。即在Postman中,您通常会选择添加api-key,api-value并将其添加到header或query-params。
我知道在基本认证的情况下是这样的方式
{:url "<api-url>"
:method :post
:headers {"Content-Type" "application/json"}
:basic-auth [<username> <password>]
:body <body>)}
我需要在Clojure中使用http-kit进行API调用,其中使用API密钥进行授权。即在Postman中,您通常会选择添加api-key,api-value并将其添加到header或query-params。
我知道在基本认证的情况下是这样的方式
{:url "<api-url>" :method :post :headers {"Content-Type" "application/json"} :basic-auth [<username> <password>] :body <body>})
但类似于API密钥版本的变体不起作用。迄今为止,我已经尝试过
{:basic-auth [<api-key> <api-value>]}
{:query-params {<api-key> <api-value>}}
{:query-params {:key <api-key>, :value <api-value>}}
{:headers {"Content-Type" "application/json",
<api-key> <api-value>}
{:api-key [<api-key> <api-value>]}
{:api-key {<api-key> <api-value>}
和其他变体,但看起来不起作用。
注意
- 在Postman中授权工作,但我无法在那里测试完整的API调用,因为正文太长、太复杂,无法复制,而且应用程序中的授权不起作用。
- 我始终以401错误返回,一些组合会在请求中放置位置时引发typeerror。
- 文档并不那么有用。请参阅此处链接。