Django上传文件测试返回301

时间:2017-05-18 10:43:15

标签: django django-rest-framework django-testing django-unittest django-tests

我正在尝试测试允许文件上传的API帖子调用,但我无法让它工作,我总是收到301

with open('video.mp4') as f:
    data = {'file': f}
    response = self.client.post('/api/upload_file', data, format='multipart')

返回的回复是301

HttpResponsePermanentRedirect status_code=301, "text/html; charset=utf-8", url="/api/v1/assets/upload_file/"

我确保self.client已经过身份验证,其余测试正确运行

self.client = APIClient()
self.client.force_authenticate(user=self.user)

1 个答案:

答案 0 :(得分:1)

您在测试中缺少尾部斜杠,因此Django会自动重定向,因为您有APPEND_SLASH = True

要解决此问题,请将代码更改为:

self.client.post('/api/upload_file/', data, format='multipart')