如何在不丢失身份验证的情况下模拟Session.request?

马库斯·温特瓦迪泽

在测试使用请求库的Python软件时,建议进行模拟requests.sessions.Session.request

不幸的是,在必须处理HTTP身份验证时,这种方法似乎无法很好地工作,我感觉我在请求中嘲笑了一个过高的抽象层。如何截取/模拟请求,这样我就不必自己处理身份验证(只需获取适当的标头)?

卢卡斯

不要嘲笑Session,使用Transport Adapter=)

Session对象会对请求进行大量处理,而在该级别上对其进行修补不会使您获得请求。

而是编写一个Transport Adaptersend()方法存储该PreparedRequest对象方法

有关示例,请参见官方文档我撰写的文章但是,您需要这样的东西:

from requests.adapters import HTTPAdapter


class TestAdapter(HTTPAdapter):
    """
    A Transport Adapter that stores all requests sent, and provides pre-canned responses.
    """
    def __init__(self, responses):
        self.responses = responses
        self.requests = requests

    def send(self, request, *args, **kwargs):
        self.requests.append(request)
        return self.responses.pop(0)

为了使它起作用,responses需要提供urllib3.Response对象列表或Requests可以使用的类似对象。TestAdapter.requests将是requests.PreparedRequest对象列表

如果您不想做所有这些工作,可以尝试使用betamax之类的方法

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

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

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在不设置系统属性的情况下将代理用于XmlRpc-Request

来自分类Dev

如何在不访问数据库的情况下进行身份验证?

来自分类Dev

如何在不设置环境变量的情况下使用Javascript向Google Sheets API进行身份验证?

来自分类Dev

如何在没有ASPNET身份的情况下使用OWIN表单身份验证

来自分类Dev

在.NET 4.5中混合使用Windows和Forms身份验证:如何在创建表单身份验证票证之后保持Request.IsAuthenticated = false?

来自分类Dev

如何在不等待响应的情况下使用request.post()方法

来自分类Dev

如何在不登录的情况下在页面加载时对用户凭据进行身份验证

来自分类Dev

如何在不使用“权限”的情况下使用Spring Security的JDBC身份验证?

来自分类Dev

如何在不进行身份验证的情况下公开Swagger UI?

来自分类Dev

如何在没有身份验证的情况下通过标签检索推文?

来自分类Dev

如何在无需身份验证的情况下共享OneDrive(Office 365)文档?

来自分类Dev

如何在不使用Cognito的情况下对dynamoDB进行身份验证?

来自分类Dev

如何在不使用ASP控件的情况下对登录表单进行身份验证

来自分类Dev

如何在没有身份验证的情况下安全地检测用户

来自分类Dev

如何在没有Microsoft身份的情况下进行JWT身份验证blazor服务器?

来自分类Dev

如何在没有凭据/身份验证的情况下以管理员身份启动Jenkins?

来自分类Dev

如何在不丢失数据的情况下安装Ubuntu?

来自分类Dev

如何在不丢失数据的情况下“关闭” juju?

来自分类Dev

如何在不丢失数据的情况下安装 ubuntu

来自分类Dev

如何在不丢失元素的情况下遍历列表

来自分类Dev

如何在不丢失数据的情况下“关闭” juju?

来自分类Dev

如何在不崩溃的情况下模拟 Observable 的错误?

来自分类Dev

Salesforce cometD:401::Request 需要身份验证

来自分类Dev

如何使用基本身份验证发出dojo.request.xhr GET请求

来自分类Dev

如何在不使用JS库的情况下通过Facebook服务器端进行身份验证

来自分类Dev

如何在不使用ember cli或AMD的情况下使用ember简单身份验证

来自分类Dev

如何在不进行OAuth重定向的情况下对Box-API进行身份验证

来自分类Dev

git支持Windows身份验证。但是如何在没有用户交互的情况下使用它?

来自分类Dev

如何在选中“包括X509证书”选项的情况下实现Docusign Connect API身份验证?

Related 相关文章

  1. 1

    如何在不设置系统属性的情况下将代理用于XmlRpc-Request

  2. 2

    如何在不访问数据库的情况下进行身份验证?

  3. 3

    如何在不设置环境变量的情况下使用Javascript向Google Sheets API进行身份验证?

  4. 4

    如何在没有ASPNET身份的情况下使用OWIN表单身份验证

  5. 5

    在.NET 4.5中混合使用Windows和Forms身份验证:如何在创建表单身份验证票证之后保持Request.IsAuthenticated = false?

  6. 6

    如何在不等待响应的情况下使用request.post()方法

  7. 7

    如何在不登录的情况下在页面加载时对用户凭据进行身份验证

  8. 8

    如何在不使用“权限”的情况下使用Spring Security的JDBC身份验证?

  9. 9

    如何在不进行身份验证的情况下公开Swagger UI?

  10. 10

    如何在没有身份验证的情况下通过标签检索推文?

  11. 11

    如何在无需身份验证的情况下共享OneDrive(Office 365)文档?

  12. 12

    如何在不使用Cognito的情况下对dynamoDB进行身份验证?

  13. 13

    如何在不使用ASP控件的情况下对登录表单进行身份验证

  14. 14

    如何在没有身份验证的情况下安全地检测用户

  15. 15

    如何在没有Microsoft身份的情况下进行JWT身份验证blazor服务器?

  16. 16

    如何在没有凭据/身份验证的情况下以管理员身份启动Jenkins?

  17. 17

    如何在不丢失数据的情况下安装Ubuntu?

  18. 18

    如何在不丢失数据的情况下“关闭” juju?

  19. 19

    如何在不丢失数据的情况下安装 ubuntu

  20. 20

    如何在不丢失元素的情况下遍历列表

  21. 21

    如何在不丢失数据的情况下“关闭” juju?

  22. 22

    如何在不崩溃的情况下模拟 Observable 的错误?

  23. 23

    Salesforce cometD:401::Request 需要身份验证

  24. 24

    如何使用基本身份验证发出dojo.request.xhr GET请求

  25. 25

    如何在不使用JS库的情况下通过Facebook服务器端进行身份验证

  26. 26

    如何在不使用ember cli或AMD的情况下使用ember简单身份验证

  27. 27

    如何在不进行OAuth重定向的情况下对Box-API进行身份验证

  28. 28

    git支持Windows身份验证。但是如何在没有用户交互的情况下使用它?

  29. 29

    如何在选中“包括X509证书”选项的情况下实现Docusign Connect API身份验证?

热门标签

归档