小编Mat*_*lly的帖子

如何让 Swagger UI 让我提供身份验证标头?

我使用 Luminus 以及 reitit 和 swagger-ui 生成一个页面,让我可以尝试我的 Luminus API。我只需输入 API 请求正文并提交即可测试我的 API。 我的 swagger UI 的快照 现在我已经使用伙伴添加了身份验证,并且我的 API 要求在请求标头中传递令牌,否则它会因为禁止而拒绝该请求。
我试图让“授权”标头字段神奇地出现在我的 UI 中,以便我可以输入 JWT 令牌字符串并测试我的 API。对于任何使用 reitit 创建 API 的人来说,这一定是一个非常常见的要求,但我不知道如何做到这一点。我到处搜索,发现了这个 reitit 问题页面,其中包括文本......

标头参数被声明为小写字符串 {:headers {"authorization" string?}} ,这将与 Ring 为我们提供的内容完全匹配。(仍然可以使用 HTTP-Header-Case 来获取文档。)

...并建议以下设置...

:get {:summary "list offers"
      :parameters 
        {:headers 
          {"authorization" string?}}
         ... etc
Run Code Online (Sandbox Code Playgroud)

这样做并没有让我有任何方式进行身份验证。因此,我找到了此讨论并通过在上述路线中的 :summary 和 :parameters 之后添加以下内容来编辑我的路线...

             :middleware [authenticated?]
             :swagger {:security [:apiKey]}
Run Code Online (Sandbox Code Playgroud)

添加后,我得到了这个...... 在此输入图像描述

...看起来我走在正确的轨道上,但我仍然无法在 auth 标头中输入我的令牌。

正如我所说,一切都与卷曲一起工作......只是那个大摇大摆没有显示任何添加身份验证标头的方法。有人知道如何让 Swagger UI 在这种情况下发挥作用吗?

如果 reitit 不支持这一点,那么人们如何使用 Swagger UI 来处理经过身份验证的请求?

任何帮助,将不胜感激!

authentication clojure swagger-ui luminus reitit

8
推荐指数
1
解决办法
1423
查看次数

为松露设置气体

truffle migrate在 main 上运行。也使用geth。我最初在 truffle.js 中将 Gas Price 和 Gas 留空,但现在看起来像这样:

live: {
  network_id: 1,
  host: "127.0.0.1",
  port: 8545,
  from: "3984bc76cb775d7866d1cd55c4f49e3d13d411d4",
  gas: 40000,
  gasPrice: 22000000000 // Specified in Wei
}
Run Code Online (Sandbox Code Playgroud)

我似乎遇到了一种情况,要么汽油太多,要么汽油不足,不可能获得适量的汽油。

 <   {
 <     "jsonrpc": "2.0",
 <     "id": 2,
 <     "error": {
 <       "code": -32000,
 <       "message": "insufficient funds for gas * price + value"
 <     }
 <   }
Error encountered, bailing. Network state unknown. Review successful transactions manually.
Error: insufficient funds for gas * price + value …
Run Code Online (Sandbox Code Playgroud)

ethereum truffle consensys-truffle go-ethereum cryptocurrency

5
推荐指数
1
解决办法
1万
查看次数