我正在使用requests-mock用dynamic response模拟外部服务。
服务的URL类似于http://test/containers/test/1234,其中1234
是我要动态生成的对象ID。
我已经尝试过使用正则表达式匹配器,但似乎无法在动态响应回调中获取match对象。
是否可以“捕获” URL的最后一位?
答案 0 :(得分:0)
传递给您的回调的第一个参数将是请求。它具有一个公共path
属性,您可以使用它:
>>> def callback(request, context):
... print("request path: ", request.path)
...
>>> with requests_mock.Mocker() as m:
... m.get("http://test/containers/test/1234", text=callback)
... requests.get("http://test/containers/test/1234")
...
request path: /containers/test/1234