我正在尝试从iPhone应用程序发送一些POST数据:
NSString* serverUrl = @"xxx";
NSString* beaconIDPOST = beaconID;
NSString* deviceTokenPOST = finalDeviceToken;
NSString *post = [NSString stringWithFormat:@"&beaconID=%@deviceID=%@clientID=%@",
beaconIDPOST,deviceTokenPOST,@"0"];
NSData *postData = [post dataUsingEncoding:NSASCIIStringEncoding allowLossyConversion:YES];
NSString *postLength = [NSString stringWithFormat:@"%lu", (unsigned long)[postData length]];
NSMutableURLRequest *request = [[NSMutableURLRequest alloc] init];
[request setURL:[NSURL URLWithString:serverUrl]];
[request setHTTPMethod:@"POST"];
[request setValue:postLength forHTTPHeaderField:@"Content-Length"];
[request setValue:@"application/x-www-form-urlencoded" forHTTPHeaderField:@"Content-Type"];
[request setHTTPBody:postData];
但我的rails应用程序总是返回HTTP状态代码422,所以我猜我的POST请求的格式是不正确的。
我也尝试过这个卷曲请求:
curl -d "&deviceID=xxx&beaconID=3&clientID=0" http://xxx
结果相同。
我检查了我的路线和网址,一切都很好。有任何想法如何解决这个错误?
感谢您的帮助:D