gpt4 book ai didi

python - 正确的 POST 文件上传(使用 Locust 进行负载测试)

转载 作者:太空宇宙 更新时间:2023-11-04 00:53:22 25 4
gpt4 key购买 nike

我正在尝试对基于 Django 的网站进行负载测试。

我使用 Locust 0.7.3 和 python 2.7.10

我在这里进行 POST - 填写表格并附加一些文件:

class WebsiteTasks(TaskSet):
def on_start(self):
self.client.get("/")

@task
def submit(self):
response = self.client.get("/submit/")
csrftoken = response.cookies['csrftoken']
attach = open('file.pdf', 'rb')

r = self.client.post("/submit/", {
'csrfmiddlewaretoken': csrftoken,
'password': smart_str(u'wkefjgui'),
'payload': smart_str(u'kjsdgfljdsh'),
'docfile': attach,
'commit': smart_str(u'Вкрапить / Embed'),
})

似乎一切正常,但服务器的上传文件夹中没有文件!

我做错了什么?

最佳答案

好吧,我找到了解决方案,希望它对某人有用:

这里描述了 Django 是如何处理文件的: How to send a "multipart/form-data" with requests in python?

配方是在 post 函数中定义 'files' 参数:

    r = self.client.post("/submit/", data={
'csrfmiddlewaretoken': csrftoken,
'password': smart_str(u'wkefjgui'),
'payload': smart_str(u'kjsdgfljdsh'),
'commit': smart_str(u'Вкрапить / Embed'),
}, files={'docfile': attach})

关于python - 正确的 POST 文件上传(使用 Locust 进行负载测试),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36163355/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com