我正在尝试使用Postman测试我的Web服务器的登录信息。首先,我向我的登录URL发送GET请求,并获得一个CSRF令牌作为cookie。然后,我使用我的用户名,密码和CSRF令牌向该登录页面发出POST请求。
我的问题是,当我在Postman中执行此操作时,当我尝试使POST请求登录时,我收到403禁止错误。我正在复制收到的CSRF令牌并将其作为POST参数之一,我使用的是有效的用户名和密码。有什么我在这里俯瞰的吗?
您需要将其设置为请求中的标题,而不是正文中的标题。 X-CSRFToken
是密钥,值是来自cookie的CSRF令牌。如果您使用的是Tastypie
或Django Rest Framework
等API框架,这将有效。
如果您在没有API层的情况下进行身份验证,则需要实际附加cookie或使用CSRF令牌创建cookie。 This post解释说。
尝试在GoogleChrome上安装Postman Interceptor Extension。它对我有用。