我需要使用Clojure中的http-kit进行API调用,它使用API-Key作为授权。也就是说,在Postman中,您通常可以选择添加api-key、api-value,也可以选择将其添加到header或query-params。
我知道在basic-auth的情况下,下面是可行的方法
{:url "<api-url>"
:method :post
:headers {"Content-Type" "application/json"}
:basic-auth [<username> <password>]
:body <body>)}但一个类似的变体在api-key版本中不起作用。到目前为止,我已经尝试过:
{: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调用,因为主体太长且太复杂,无法复制,而且授权不能在应用程序中工作。)
发布于 2021-04-01 12:54:19
如果您在Postman中使用API密钥auth向不存在的端点提交POST请求,则请求将失败,但您仍然可以使用控制台检查请求中尝试的标头。我使用了占位符值,请求头如下所示:
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-type、Accept和自定义API键/值对)。
https://stackoverflow.com/questions/66893117
复制相似问题