iPhone 데이터를 서버에 보내서 데이터를 MySQL 데이터베이스에 등록하면 알림 등을 보낼 수 있습니다. 그것은 고유 한 식별자, 장치 이름, 토큰 및 우리 서버에 POST 요청과 같은 암호와 사용자 이름과 같은 몇 가지 작은 것들을 보냅니다. 문제는 때때로 서버가 데이터를 수신하지 않는다는 것입니다. 그리고 이것은 POST 입력에 대한 공백 값을받는 것이 아니라 모든 포스트 데이터를 수신하지 않는 것을 의미합니다. 모든 POST 입력을 내 서버에 일부 로그 파일에 기록하고 장치의 POST 데이터에 의존하는 스크립트가 실패 할 때 (데이터를 감지하지 못함) POST 데이터가 전송되지 않았 음을 알게됩니다. 데이터를 거부하는 것과 같은 서버상의 문제입니까, 아니면 클라이언트 측에 있어야합니까? 무엇이 이것을 일으킬 수 있습니까?POST 데이터가 iPhone에서 수신되지 않습니다.
아이폰 코드 : 나는 ASIHTTPRequest를 사용하는 것이 좋습니다
NSString *post = [NSString stringWithFormat:@"deviceIdentifier=%@&deviceToken=%@",deviceIdentifier,deviceToken];
NSData *postData = [post dataUsingEncoding:NSASCIIStringEncoding allowLossyConversion:NO];
NSString *postLength = [NSString stringWithFormat:@"%d", [postData length]];
NSMutableURLRequest *request = [[[NSMutableURLRequest alloc] init] autorelease];
[request setURL:[NSURL URLWithString:@"http://website.com/RegisterScript.php"]];
[request setHTTPMethod:@"POST"];
[request setValue:postLength forHTTPHeaderField:@"Content-Length"];
[request setValue:@"application/x-www-form-urlencoded" forHTTPHeaderField:@"Content-Type"];
[request setValue:@"MyApp-V1.0" forHTTPHeaderField:@"User-Agent"];
[request setHTTPBody:postData];
NSData *urlData = [NSURLConnection sendSynchronousRequest:request returningResponse:nil error:nil];
NSString *response = [[NSString alloc] initWithData:urlData encoding:NSASCIIStringEncoding];