iPhone发布到Django并获得CSRF验证失败

Ami*_*gin 3 iphone django post django-csrf

我从iPhone发送POST请求到Django并获得"CSRF验证失败",我无法完全理解.我试图通过互联网找到一个很好的解决方案,但我不能.是否有任何简单的方法来发送到Django?

这是我的代码:

   NSString *post =[NSString stringWithFormat:@"s=aaa&r=k&c=gg"];
NSData *postData = [post dataUsingEncoding:NSUTF8StringEncoding allowLossyConversion:YES];
NSString *postLength = [NSString stringWithFormat:@"%d", [postData length]];
NSMutableURLRequest *request = [[NSMutableURLRequest alloc] init];
[request setURL:[NSURL URLWithString:(@"http://localhost:8000/messages/views/")]];
[request setHTTPMethod:@"POST"];
[request setValue:postLength forHTTPHeaderField:@"Content-Length"];
[request setValue:@"application/x-www-form-urlencoded charset=utf-8" forHTTPHeaderField:@"Content-Type"];
[request setHTTPBody:postData];
NSError *error;
NSURLResponse *response;
NSData *urlData=[NSURLConnection sendSynchronousRequest:request returningResponse:&response error:&error];
NSString *data=[[NSString alloc]initWithData:urlData encoding:NSUTF8StringEncoding];
NSLog(data);
Run Code Online (Sandbox Code Playgroud)

sau*_*ito 7

我错了还是在本机应用上使用它没有意义?

在这种情况下,您可以使用此装饰器禁用此保护:

from django.views.decorators.csrf import csrf_exempt
@csrf_exempt
  def view_without_csrf_protection(request):
    pass
Run Code Online (Sandbox Code Playgroud)