서버에 UIImage를 업로드하려고했지만 업로드하기 전에 BASE64 문자열로 변환했습니다. POST이고 다른 매개 변수가있는 이미지를 본문에 전송하고 있습니다. . 이것과 관련된 몇 가지 답변을 읽었지만 유용하지 않습니다. 다음은 문자열는 BASE64 문자열이 방법에 내 코드UIImage 서버에 UIImage를 업로드 할 수 없습니다.
-(void)makeprofileWithData:(NSString *)urlstring andname:(NSString *)name gender:(NSString *)gender withstatus:(NSString *)status latitide:(NSString *)lat withLongitude:(NSString *)longitude andaddress:(NSString *)address andImage:(NSString *)string;
{
appdel=(AppDelegate *)[UIApplication sharedApplication].delegate;
NSURL *url = [NSURL URLWithString:[NSString stringWithFormat:@"%@%@",appdel.bseurl,urlstring]];
receivedData = [[NSMutableData alloc] initWithLength:0];
NSString *tempString=[NSString stringWithFormat:@"mobile=%@&name=%@&gender=%@&status=%@&address=%@&latitude=%@&longitude=%@&profile_pic=%@",[[NSUserDefaults standardUserDefaults]objectForKey:@"mobile"],name,gender,status,address,lat,longitude,string];
NSData *requestData = [tempString dataUsingEncoding:NSUTF8StringEncoding];
NSError *error;
NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:url cachePolicy:NSURLRequestUseProtocolCachePolicy timeoutInterval:60.0];
[request setHTTPMethod:@"POST"];
[request setValue:@"application/json" forHTTPHeaderField:@"Accept"];
[request setValue:@"application/x-www-form-urlencoded" forHTTPHeaderField:@"Content-Type"];
[request setValue:[NSString stringWithFormat:@"%d", [requestData length]] forHTTPHeaderField:@"Content-Length"];
[request setHTTPBody: requestData];
[NSURLConnection connectionWithRequest: request delegate:self];
}
, 그리고 내가 이동, 이름 위치, 주소, &로 구분하여 몸에도 성 같은 다른 매개 변수를 보낸다.
위의 코드에서 내가 뭘 잘못하고 있는지 말해 줄 수 있습니까? – ankyy
나에 따르면 잘하고 있다고 생각하지만 문제는 서버 측에서 적절하게 디코딩하지 않습니다. BASE64 변환을 사용한다고 말합니다. 그에 따라 디코드됩니다. – Deepak