为 Django 测试发出添加请求 headers
Issue adding request headers for Django Tests
我需要向 Django 测试中的请求添加 header。根据各种建议,我在 Stack Overflow 和其他地方浏览了几页。我可以将 header 成功添加到 PUT 和 GET,但是 POST 有问题。任何建议将不胜感激。
对于 PUT 和 GET,我使用了以下 [通过成功]:
resp = self.client.put(resource_url, res_params, **{'HTTP_SSL_CLIENT_CERT': self.client_cert})
对于 POST,我尝试了同样的操作但收到错误消息:
“'str' object 没有属性 'items'”
我试过以下方法:
resp = self.client.post(resource_url, res_params, **{'HTTP_SSL_CLIENT_CERT': self.client_cert})
resp = self.client.post(resource_url, res_params, HTTP_SSL_CLIENT_CERT=self.client_cert)
resp = self.client.post(resource_url, res_params, HTTP_SSL_CLIENT_CERT='1234567890')
对于发现自己在查看此页面时遇到类似问题的任何人,我能够通过以下方式解决此问题:
resp = self.client.post(resource_url, data=res_params, content_type='application/json', HTTP_SSL_CLIENT_CERT=self.client_cert)
我需要向 Django 测试中的请求添加 header。根据各种建议,我在 Stack Overflow 和其他地方浏览了几页。我可以将 header 成功添加到 PUT 和 GET,但是 POST 有问题。任何建议将不胜感激。
对于 PUT 和 GET,我使用了以下 [通过成功]:
resp = self.client.put(resource_url, res_params, **{'HTTP_SSL_CLIENT_CERT': self.client_cert})
对于 POST,我尝试了同样的操作但收到错误消息: “'str' object 没有属性 'items'”
我试过以下方法:
resp = self.client.post(resource_url, res_params, **{'HTTP_SSL_CLIENT_CERT': self.client_cert})
resp = self.client.post(resource_url, res_params, HTTP_SSL_CLIENT_CERT=self.client_cert)
resp = self.client.post(resource_url, res_params, HTTP_SSL_CLIENT_CERT='1234567890')
对于发现自己在查看此页面时遇到类似问题的任何人,我能够通过以下方式解决此问题:
resp = self.client.post(resource_url, data=res_params, content_type='application/json', HTTP_SSL_CLIENT_CERT=self.client_cert)