Мне нужно загрузить изображение с устройства iOS в веб-службу. При загрузке изображения я использовал;Преобразование UIImage в NSData
NSData* pictureData = UIImagePNGRepresentation(originalImage);
На самом деле это нормально работает. Однако загруженные изображения не отображаются в IE. Я попытался загрузить как JPG, так и PNG, я могу видеть изображения во всех других браузерах, но он не работает в IE. Поэтому я думал, что это может быть преобразование его в NSData.
Есть ли другой способ конвертировать UIImage в NSData?
Или любая другая идея, которая может вызвать проблему?
Вот как я могу загрузить изображение;
NSString *contentType = [NSString stringWithFormat:@"multipart/form-data; boundary=%@", boundary];
[request setValue:contentType forHTTPHeaderField: @"Content-Type"];
NSMutableData *body = [NSMutableData data];
NSData* pictureData = UIImagePNGRepresentation(originalImage);
if (pictureData) {
[body appendData:[[NSString stringWithFormat:@"--%@\r\n", boundary] dataUsingEncoding:NSUTF8StringEncoding]];
[body appendData:[[NSString stringWithFormat:@"Content-Disposition: form-data; name=\"%@\"; filename=\"image.JPG\"\r\n", FileParamConstant] dataUsingEncoding:NSUTF8StringEncoding]];
[body appendData:[@"Content-Type: image/jpeg\r\n\r\n" dataUsingEncoding:NSUTF8StringEncoding]];
[body appendData:pictureData];
[body appendData:[[NSString stringWithFormat:@"\r\n"] dataUsingEncoding:NSUTF8StringEncoding]];
}
[body appendData:[[NSString stringWithFormat:@"--%@--\r\n", boundary] dataUsingEncoding:NSUTF8StringEncoding]];
проблема скорее всего не в том, как вы загружаете свое изображение, а о том, как оно отображается на вашем сайте. –
Я загружаю его в JIRA с помощью своих собственных служб REST. Эта функциональность используется множеством различных приложений. Поэтому в моем коде должно быть что-то не так. Это то, что я использую: [link] (https://docs.atlassian.com/jira/REST/latest/#idp2011456) –
Помимо установки * правильного * заголовка содержимого контента, вы должны установить размер содержимого * multipart * (размер данных изображения) явно. NSURLConnection будет делать это для всего сообщения, но я твердо верю не в * multipart *. – CouchDeveloper