iPhone에서 서버로 PLIST 파일을 업로드하는 Objective C로 iPhone 앱이 만들어졌습니다. 대부분의 시간을 완벽하게 작동하지만, 때로는 파일 내가이 분명히 바이너리 PLIST 것을 발견이iPhone PLIST 파일 업로드 나오기 이진
bplist00Ú .....
처럼 보이는,하지만 난 그런 일이 왜 알아낼 수 없습니다.
의견이 있으십니까?
NSString *path = [[NSHomeDirectory() stringByAppendingPathComponent:@"Documents"] stringByAppendingPathComponent:fileName];
NSData *data = [[NSData alloc] initWithContentsOfFile:path];
// Location ID doesn't seem to be correct here - always 0?
NSMutableString *urlString = [NSMutableString string];
[urlString appendString:[NSString stringWithFormat:@"http://www.website.com/app/iphone/submitjob/upload?jid=%i&mid=%@&lid=%i", delegate.jobInProgress.jobID, delegate.memberID, [[delegate.jobInProgress.plist objectForKey:@"locationID"] intValue]]];
NSMutableURLRequest *request = [[[NSMutableURLRequest alloc] init] autorelease];
[request setURL:[NSURL URLWithString:urlString]];
[request setHTTPMethod:@"POST"];
NSString *boundary = @"---------------------------14737809831466499882746641449";
NSString *contentType = [NSString stringWithFormat:@"multipart/form-data; boundary=%@", boundary];
[request addValue:contentType forHTTPHeaderField: @"Content-Type"];
NSMutableData *postbody = [NSMutableData data];
[postbody appendData:[[NSString stringWithFormat:@"\r\n--%@\r\n", boundary] dataUsingEncoding:NSUTF8StringEncoding]];
[postbody appendData:[[NSString stringWithFormat:@"Content-Disposition: form-data; name=\"userfile\"; filename=\"%@\"\r\n", fileName] dataUsingEncoding:NSUTF8StringEncoding]];
[postbody appendData:[[NSString stringWithString:@"Content-Type: application/octet-stream\r\n\r\n"] dataUsingEncoding:NSUTF8StringEncoding]];
[postbody appendData:[NSData dataWithData:data]];
[postbody appendData:[[NSString stringWithFormat:@"\r\n--%@--\r\n", boundary] dataUsingEncoding:NSUTF8StringEncoding]];
[request setHTTPBody:postbody];
NSData *returnData = [NSURLConnection sendSynchronousRequest:request returningResponse:nil error:nil];
NSString *returnString = [[NSString alloc] initWithData:returnData encoding:NSUTF8StringEncoding];
returnString = [returnString stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceAndNewlineCharacterSet]];
이진 코드를 작성하십시오. 그것은 우리에게 뭔가를 계속 줄 것이다 – MCannon
글쎄 그 이상한 부분은 PLIST는 XML로 애플 리케이션에 제공됩니다. 나는 PLIST를 업로드하는 코드를 게시 할 수 있습니다. –