Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python Django在手动签名的cookie上获取签名的cookie_Python_Django_Cookies_Django Rest Framework_Django Testing - Fatal编程技术网

Python Django在手动签名的cookie上获取签名的cookie

Python Django在手动签名的cookie上获取签名的cookie,python,django,cookies,django-rest-framework,django-testing,Python,Django,Cookies,Django Rest Framework,Django Testing,我在我的一个视图中使用了get_signed_cookie,它很有效。问题是在测试它时,我在测试中使用Django的Django.core.signing模块对cookie进行手动签名,使用的salt与我的实际代码相同。我使用的salt在我的设置中 当我做非自动化测试时,一切都很好。我将测试中设置的cookie与Django本身设置的cookie进行了比较,它们的结构相同: 在我的测试中,我正在对测试中的字符串“test\u cookie\u value”进行手动签名: {'my_cookie'

我在我的一个视图中使用了get_signed_cookie,它很有效。问题是在测试它时,我在测试中使用Django的Django.core.signing模块对cookie进行手动签名,使用的salt与我的实际代码相同。我使用的salt在我的设置中

当我做非自动化测试时,一切都很好。我将测试中设置的cookie与Django本身设置的cookie进行了比较,它们的结构相同:

在我的测试中,我正在对测试中的字符串“test\u cookie\u value”进行手动签名:

{'my_cookie':'test_cookie_value:s5SA5skGmc4As-Weyia6Tlwq_V8'}

Django:

{'my_cookie':'ztmwe4atueteeeavs:1YRl0a:Lg3KHfpL93HoUijkZlNphZNURu4'}

但是当我的视图试图获得签名时,返回False,salt=my-salt,False

我觉得这很奇怪,当我第一次尝试服从测试山羊TDD'er的时候,我很想跳过测试


我希望有人能给我一些指导,我现在一直忽视背景中的山羊噪音。

我找到了解决办法。事实上,这相当简单


我尝试在测试请求上设置cookie,这是有意义的,因为cookie应该在请求中发送。一个更好的测试方法是首先获取一个设置te cookie的资源,这在正常的web环境中也会发生,然后使用设置好的cookie发布。这很管用

我找到了解决办法。事实上,这相当简单


我尝试在测试请求上设置cookie,这是有意义的,因为cookie应该在请求中发送。一个更好的测试方法是首先获取一个设置te cookie的资源,这在正常的web环境中也会发生,然后使用设置好的cookie发布。这很管用

测试山羊希望看到组成解决方案的实际代码:测试山羊希望看到组成解决方案的实际代码: