首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在Clojure中使用http-kit发送api-key作为授权?

如何在Clojure中使用http-kit发送api-key作为授权?
EN

Stack Overflow用户
提问于 2021-04-01 02:12:14
回答 1查看 121关注 0票数 0

我需要使用Clojure中的http-kit进行API调用,它使用API-Key作为授权。也就是说,在Postman中,您通常可以选择添加api-keyapi-value,也可以选择将其添加到headerquery-params

我知道在basic-auth的情况下,下面是可行的方法

代码语言:javascript
复制
{:url "<api-url>"
 :method :post
 :headers {"Content-Type" "application/json"}
 :basic-auth [<username> <password>]
 :body <body>)}

但一个类似的变体在api-key版本中不起作用。到目前为止,我已经尝试过:

代码语言:javascript
复制
{:basic-auth [<api-key> <api-value>]}
代码语言:javascript
复制
{:query-params {<api-key> <api-value>}}
代码语言:javascript
复制
{:query-params {:key <api-key>, :value <api-value>}}
代码语言:javascript
复制
{:headers {"Content-Type" "application/json"
           <api-key> <api-value>}
代码语言:javascript
复制
{:api-key [<api-key> <api-value>]}
代码语言:javascript
复制
{:api-key {<api-key> <api-value>}

和其他变体,但它似乎不起作用。

(注意:授权在postman上有效,但我无法在那里测试完整的api调用,因为主体太长且太复杂,无法复制,而且授权不能在应用程序中工作。)

EN

回答 1

Stack Overflow用户

发布于 2021-04-01 12:54:19

如果您在Postman中使用API密钥auth向不存在的端点提交POST请求,则请求将失败,但您仍然可以使用控制台检查请求中尝试的标头。我使用了占位符值,请求头如下所示:

代码语言:javascript
复制
MYAPIKEY: MYAPIVALUE
Content-Type: application/json
User-Agent: PostmanRuntime/7.26.10
Accept: */*
Postman-Token: 0494818d-5401-4baa-8ef7-bfce46c7196e
Host: localhost:5001
Accept-Encoding: gzip, deflate, br
Connection: keep-alive

这让我认为,对于http-kit中的请求,至少需要几个这样的头(通常至少需要Content-typeAccept和自定义API键/值对)。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66893117

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档