2012-06-18 5 views
3

я хочу отправить изображение с iPhone/IPad в .net service.Currently Я использую ASIFormDataRequest, но я получаю ошибкуASIFormDataRequest: изображение после .NET-службы

«Формат запроса недопустим: многослойную/форма -data; charset = utf-8; border = 0xKhTmLbOuNdArY. "

, пожалуйста, помогите мне решить эту ошибку. Спасибо

+0

Попробуйте мой подход, или если вы его работаете с ASI, пожалуйста, напишите свой ответ. –

ответ

0

Попробуйте установить данные в вашем ASIFormDataRequest как этот

NSData *imgData = UIImagePNGRepresentation(img); 
[request addData:imgData withFileName:@"FILENAME" andContentType:@"image/jpg" forKey:@"YOUR KEY"]; 

Где запрос вашего ASIFormDataRequest

День кодирования.

+0

Я добавил этот код, но то, что мне нужно настроить на стороне сервера –

0
-(void)uploadFile{ 
    NSURL *url = [NSURL URLWithString: photoUploadURLString]; 

    ASIFormDataRequest *request = [ASIFormDataRequest requestWithURL:url]; 

    [request setUseKeychainPersistence:YES]; 
    //if you have your site secured by .htaccess 

    NSString *fileName = [NSString stringWithFormat:@"ipodfile%@.jpg",self.fileID];//your image file name 
    [request addPostValue:fileName forKey:@"name"]; 

    // Upload an image 
    NSData *imageData = UIImageJPEGRepresentation([UIImage imageName:fileName]) // your image 
    [request setData:imageData withFileName:fileName andContentType:@"image/jpeg" forKey:@"userfile"]; 

    [request setDelegate:self]; 
    [request setDidFinishSelector:@selector(uploadRequestFinished:)]; 
    [request setDidFailSelector:@selector(uploadRequestFailed:)]; 

    [request startAsynchronous]; 
} 

- (void)uploadRequestFinished:(ASIHTTPRequest *)request{  
NSString *responseString = [request responseString]; 
    NSLog("Upload response %@", responseString); 
} 

- (void)uploadRequestFailed:(ASIHTTPRequest *)request{ 

    NSLog(@" Error - Statistics file upload failed: \"%@\"",[[request error] localizedDescription]); 
} 
+0

Проблема, с которой я столкнулся, связана с веб-службой.Я не уверен, какой тип данных я должен получать от приложения POST. Любая помощь приветствуется. –

+0

, то как мы можем помочь, если вы не знаете тип данных, которые вы должны получать. –

0

я тоже такая же проблема .. та же ошибка ..

Но я разрешил его в каком-то другом apporach.

В основном .Net webservice ожидает, что изображение будет поставляться как binary или byte[] массив.

Нет способа найти я UIImage как byte[] используя ASIFormDataRequest на сервер.

Но NSURLRequest делает это лучше, нам нужно копать больше, чем обычно.

У меня был опыт работы с Sudzc soap framework для iOS. Это не открытый исходный код, но вы можете получить его бесплатно.

Все, что вам нужно сделать, это,

  1. вам нужно ссылку WSDL, вы можете получить его, как, если Http: //.....xyz.asmx ваша база URL, затем http: //.....xyz.asmx/wsdl предоставит вам WSDL, вы можете проверить его в браузере.
  2. визит www.sudzc.com
  3. вставьте URL, выберите Objectivc-C для прошивки проекта из списка выпадающих ниже поля URL. вы можете указать префикс, если вам нужно, или вы можете избежать этого.
  4. нажмите Сформировать

Это поможет вам почтовый файл, который имеет проект IOS. как только вы откроете проект, проверьте каталог Generated, где вы можете увидеть все, что вам нужно.

Смежные вопросы