2013-07-09 4 views
1

У меня возникла проблема с загрузкой изображения на сервер. и получение 500 Internal Server Error.500 Внутренний сервер Ошибка при загрузке изображения

Я загрузки изображения с помощью кода ниже

ASIFormDataRequest *request=[ASIFormDataRequest requestWithURL:url]; 
    [request setRequestMethod:@"PUT"]; 
    [request setPostValue:[[NSUserDefaults standardUserDefaults]valueForKey:@"nickname"] forKey:@"nick"]; 

    NSData *imageData = UIImagePNGRepresentation(img.image); 
    [request addData:imageData withFileName:@"image.png" andContentType:@"image/png" forKey:@"image"]; 
    //[request setData:imageData withFileName:@"profileImage.jpeg" andContentType:@"image/jpeg" forKey:@"image"]; 

    [request setDelegate:self]; 
    [request setDidFinishSelector:@selector(requestSuccess:)]; 
    [request setDidFailSelector:@selector(requestFailed:)]; 
    [request startAsynchronous]; 

и в ответ

-(void)requestSuccess:(ASIFormDataRequest *)request{ 
    NSLog(@"%@",[request responseData]); 
    NSError *error; 

    NSString* newStr = [[[NSString alloc] initWithData:[request responseData] 
              encoding:NSUTF8StringEncoding] autorelease]; 
    NSDictionary *dict=[NSJSONSerialization JSONObjectWithData:[request responseData] options:NSJSONReadingAllowFragments error:&error]; 

    NSLog(@"%@",error); 
} 

во-первых, есть ошибка в преобразовании данных JSON данных в NSdictionary, и его через ниже ошибки

Error Domain=NSCocoaErrorDomain Code=3840 "The operation couldn’t be completed. (Cocoa error 3840.)" (Invalid value around character 0.) UserInfo=0x8563f70 {NSDebugDescription=Invalid value around character 0.} 

затем я попытался проверить преобразование Response данные в NSString, как это сделано выше, и тем самым я получаю ниже строки в ответ

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN"> 
<title>500 Internal Server Error</title> 
<h1>Internal Server Error</h1> 
<p>The server encountered an internal error and was unable to complete your request. Either the server is overloaded or there is an error in the application.</p> 

что может быть проблема?

ответ

0

Это:

[request setRequestMethod:@"PUT"]; 

Должно быть:

[request setRequestMethod:@"POST"]; 
Смежные вопросы