如何通过locust发送protobuf格式的http请求

How to send http request in protobuf format by locust

我是 locust 的新手,我知道它对 json 格式的 http 请求有很好的支持。

我们想对 pb 格式的 http api 进行压力测试,但是,如何通过 locust 发送 protobuf 格式的 http 请求(相反,jmeter 支持 pb 格式)。

这和上传文件一样吗?

files = {
'image': open('sample.jpg', 'rb'),
}

r = requests.post('http://localhost:5000/', files=files)

这取决于服务器希望如何传输数据。如果它希望将其作为多部分文件上传进行传输,您可以使用 files 关键字参数 (http://docs.python-requests.org/en/master/user/quickstart/#post-a-multipart-encoded-file)。但是,如果我猜的话,我认为数据更有可能作为 POST 正文中的原始数据传输:

self.client.post("/some/url", data=my_protobuf_data)