curl -H "X-Samanage-Authorization: Bearer <TokenGoesHere>" -H 'Accept: application/vnd.samanage.v2.1+json' -H 'Content-Type: application/json' -X GET https://api.samanage.com/incidents.json
我知道https://swagger.io/docs/specification/authentication/bearer-authentication/,但它似乎并没有完全帮助我。
This(OpenAPI 3)
components:
securitySchemes:
bearerAuth:
type: http
scheme: bearer
bearerFormat: JWT
...
security:
- bearerAuth: []
名为default的身份验证标头中的结果(Authorization
)
curl -X GET "https://api.samanage.com/incidents/12341234.json" -H "accept: application/json" -H "Authorization: Bearer <TokenGoesHere>"
components:
securitySchemes:
bearerAuth:
type: http
name: X-Samanage-Authorization
in: header
scheme: bearer
但这在Swagger编辑器中验证失败,因为我认为HTTP
的类型
不允许name
组件(就像apikey
类型一样)。老实说,我不能完全理解这里的医生。
我确实读过关于规范扩展的文章,但是我对OpenAPI是完全陌生的,我找不到任何关于如何实际实现我所需要的东西的例子。
任何洞察力都非常感谢!
类型:HTTP
用于RFC7235和IANA HTTP authentication Scheme注册表定义的HTTP身份验证。根据定义,HTTP身份验证使用Authorization
标头。
要使用自定义头名称,需要将其定义为API密钥(类型:apikey
):
components:
securitySchemes:
bearerAuth:
type: apiKey
name: X-Samanage-Authorization
in: header
请注意,由于它是非标准承载方案,客户端需要手动将“承载”前缀添加到令牌值中。例如,当您在Swagger UI中单击“授权”时,您将需要输入“承载令牌”,而不仅仅是“令牌”。
如何为这些参数编写OpenAPI(Swagger)定义?
有没有人对Swagger Codegen有一些经验?目前,我正在努力执行Swagger Codegen CLI。在本教程之后,我首先尝试通过OpenAPI生成器生成Dart代码:https://clearpoint.digital/blog/accelerate-flutter-development-with-contract-first-openapi-and-dart-code-genera
我试图用Spring Cloud Stream创建一个kafka使用者,以便监听在任何Spring上下文之外构建的kafka消息,并使用自定义头(operationType)。 我使用的是Spring Boot 1.5.x/Spring Cloud egdware.sr5和1.1.1版本的kafka-client和Kafka2.11。 我的侦听器类包含此方法 而operationType标头是存在
我需要发送一个GET请求,标题是:。我期待服务器的XML响应。我用邮递员测试了请求和响应,一切都很好。但是,当我尝试在Spring中使用执行此操作时,我总是会收到400个错误请求。的异常是: 我的代码: 调试消息将标头显示为,这似乎是正确的。我想知道我的请求出了什么问题,以及是否有一种方法可以看到在线调试的请求。
我正在将swagger应用于我的一个项目。 然后,他们应该在标头中随每次调用一起发送此令牌。 所以它就像: 看看swagger文档,它似乎只是为了处理OAuth而设置的。有没有办法让swagger以我的方式处理身份验证?我的意思是在生成的代码中。我可以为项目生成代码,它只有“Basic:...”作为选项。
注意:我查看了这篇类似的旧文章,但当时不可用。