如何在Bravado中设置自定义HTTP客户端?

y

我正在使用Bravado 3.0.0。我想发出一个使用我自己的自定义CA Bundle的请求。基础的Requests客户端没有利用REQUESTS_CA_BUNDLE我设置env var。

如何传入使用我的CA Bundle的自定义客户端?

KodinLanewave

(此答案基于Bravado的当前编写本8.1.0版本)

由于在学习Bravado时花了我一段时间才找到答案,并且主要是因为我认为其他人可能会从中受益,因此下面是如何建立连接的最新信息:

为了利用HTTP客户端中的非默认设置(以Requests为例),必须使用自己的设置创建一个新的HTTP客户端实例,然后将其传递给SwaggerClient.from_url()调用:

""" Required to create a new Requests 'http_client' instance: """
from bravado.requests_client import Requestsclient
""" Required to create a Bravado SwaggerClient instance: """
from bravado.client import SwaggerClient

""" Create a new Requests client instance: """
http_client = RequestsClient()

在这里,您可以执行Requests可以做的所有有趣的事情,例如设置基本的HTTP身份验证:

http_client.set_basic_auth(SERVER, USER, PASS)

或禁用SSL证书验证(在测试环境之外不建议使用):

http_client.session.verify = False

或者,如您的问题和答案所指出,请提供本地证书存储以进行验证:

http_client.session.cert = os.environ.get('REQUESTS_CA_BUNDLE')

从那里开始,只需创建一个SwaggerClient实例,将其指向您的swagger.json路径,然后引用Requests'http_client'实例(具有预定义的设置),就像这样:

URL = 'https://myserver/api/path/to/swagger.json'
client = Swaggerclient.from_url(URL, http_client=http_client)

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在Go中创建自定义的HTTP客户端?

来自分类Dev

Android中的自定义异步Http客户端

来自分类Dev

如何在awesomeWM v3.5.6中为任务列表设置任何客户端的自定义图标?

来自分类Dev

在Java中的HTTP客户端如何自定义“主机”头

来自分类Dev

如何在yii中创建客户端自定义规则

来自分类Dev

具有自定义HTTP客户端的WebView

来自分类Dev

如何在我的客户端中注册我的自定义MessageBodyReader?

来自分类Dev

如何在客户端发出自定义的“ POST”请求?

来自分类Dev

如何在将 DTO 发送到客户端之前添加自定义逻辑?

来自分类Dev

自定义客户端验证

来自分类Dev

xinetd自定义服务中如何获取连接客户端的IP地址

来自分类Dev

如何在Mac的Paw HTTP客户端中设置自动扩展?

来自分类Dev

如何在Reactor Netty HTTP客户端中设置TCP Keepalive?

来自分类Dev

如何在Laravel中设置OpenID Connect客户端?

来自分类Dev

如何定义`http客户端`

来自分类Dev

具有自定义TCP读取缓冲区的HTTP2客户端

来自分类Dev

客户端列表上的MVC自定义验证

来自分类Dev

仅允许来自自定义客户端的连接

来自分类Dev

添加自定义证书的OkHttp客户端

来自分类Dev

使用贝宝自定义客户端ID

来自分类Dev

MVC自定义客户端验证

来自分类Dev

集合内的自定义属性客户端验证

来自分类Dev

WebHost的自定义邮件客户端

来自分类Dev

模型自定义客户端验证

来自分类Dev

使用 Java kafka 客户端自定义分区

来自分类Dev

使用AIDL编写Android服务时如何为客户端分配自定义类

来自分类Dev

如何将自定义客户端传递给Golang oauth2.Exchange

来自分类Dev

如何从客户端将自定义HTML表信息读取到Flask后端

来自分类Dev

如何从iOS客户端访问自定义渠道的额外数据

Related 相关文章

  1. 1

    如何在Go中创建自定义的HTTP客户端?

  2. 2

    Android中的自定义异步Http客户端

  3. 3

    如何在awesomeWM v3.5.6中为任务列表设置任何客户端的自定义图标?

  4. 4

    在Java中的HTTP客户端如何自定义“主机”头

  5. 5

    如何在yii中创建客户端自定义规则

  6. 6

    具有自定义HTTP客户端的WebView

  7. 7

    如何在我的客户端中注册我的自定义MessageBodyReader?

  8. 8

    如何在客户端发出自定义的“ POST”请求?

  9. 9

    如何在将 DTO 发送到客户端之前添加自定义逻辑?

  10. 10

    自定义客户端验证

  11. 11

    xinetd自定义服务中如何获取连接客户端的IP地址

  12. 12

    如何在Mac的Paw HTTP客户端中设置自动扩展?

  13. 13

    如何在Reactor Netty HTTP客户端中设置TCP Keepalive?

  14. 14

    如何在Laravel中设置OpenID Connect客户端?

  15. 15

    如何定义`http客户端`

  16. 16

    具有自定义TCP读取缓冲区的HTTP2客户端

  17. 17

    客户端列表上的MVC自定义验证

  18. 18

    仅允许来自自定义客户端的连接

  19. 19

    添加自定义证书的OkHttp客户端

  20. 20

    使用贝宝自定义客户端ID

  21. 21

    MVC自定义客户端验证

  22. 22

    集合内的自定义属性客户端验证

  23. 23

    WebHost的自定义邮件客户端

  24. 24

    模型自定义客户端验证

  25. 25

    使用 Java kafka 客户端自定义分区

  26. 26

    使用AIDL编写Android服务时如何为客户端分配自定义类

  27. 27

    如何将自定义客户端传递给Golang oauth2.Exchange

  28. 28

    如何从客户端将自定义HTML表信息读取到Flask后端

  29. 29

    如何从iOS客户端访问自定义渠道的额外数据

热门标签

归档