2013-07-09 147 views
1

我正在面临将图像上传到服务器的问题。并获得500 Internal Server Error500上传图像时出现内部服务器错误

我被下面的代码上传图像

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.} 

然后我试图检查转换在的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"]; 
相关问题