我创建了一个AFHTTPClient子类作为我朋友的Django服务器的Web服务接口 . 除了'DELETE'和'POST'请求之外,我们取得了巨大的成功 . 他的服务器需要一个CSRF令牌,但我不知道如何获取该信息或在我的AFHTTPClient中使用该信息 . 当我的应用程序登录时,Django服务器当前生成CSRF(我相信 Headers ) .
执行'DELETE'或'POST'失败的尝试从他的服务器生成此JSON响应:“CSRF失败:CSRF令牌丢失或不正确 . ”
最后,我的问题是:您如何使用AFNetworking(AFHTTPClient专门)管理CSRF令牌?
谢谢 .
2 回答
CSRF令牌作为cookie发送,每个HTTP响应 . 您需要在
X-CSRFToken
标头中使用每个POST / PUT / ...请求将其发回,就像为AJAX请求完成一样 . 另见the official documentation .你可以从像这样的cookie获取csrf:
(NSString *)getCSRFFromCookie {
}