rails:上传图片时 ios 服务器内部错误

rails: server internal error in ios while uploading image

当我上传图片文件到railswebrick服务器时,提示内部错误"Could not find a temporary directory",没有接收请求。

boundary = @"---------------------------14737809831466499882746641449";

NSMutableData *body = [NSMutableData data];
[body appendData:[[NSString stringWithFormat:@"\r\n--%@\r\n", boundary] dataUsingEncoding:NSUTF8StringEncoding]];
[body appendData:[[NSString stringWithFormat:@"Content-Disposition: form-data; name=\"nickname\"\r\n\r\n%@\r\n", nickname] dataUsingEncoding:NSUTF8StringEncoding]];
dataUsingEncoding:NSUTF8StringEncoding]];
[body appendData:[[NSString stringWithFormat:@"\r\n--%@\r\n",boundary] dataUsingEncoding:NSUTF8StringEncoding]];
[body appendData:[[NSString stringWithFormat:@"Content-Disposition: attachment; name=\"profile_image\"; filename=\"%@\"\r\n", @"19"] dataUsingEncoding:NSUTF8StringEncoding]];
[body appendData:UIImageJPEGRepresentation(profileImage, 1.0f)];
[body appendData:[[NSString stringWithFormat:@"\r\n--%@--\r\n",boundary] dataUsingEncoding:NSUTF8StringEncoding]];


NSString *requestURL = @"http://0.0.0.0:3000/index";

NSMutableURLRequest *request = [[NSMutableURLRequest alloc] init];
NSString *contentType = [NSString stringWithFormat:@"multipart/form-data; boundary=%@", boundary];
NSString *contentLength = [NSString stringWithFormat:@"%lu", (unsigned long)[body length]];
[request setURL:[NSURL URLWithString:requestURL]];
[request setValue:contentType forHTTPHeaderField:@"Content-Type"];
[request setValue:contentLength forHTTPHeaderField:@"Content-Length"];
[request setHTTPMethod:@"POST"];
[request setHTTPBody:body];

NSURLConnection *connection = [[NSURLConnection alloc] initWithRequest:request delegate:self];

[connection start];

自行解决。

默认 /tmp 目录权限为 drwxrwxrwt。

但我更改了权限 drwxrwxrwx。

所以 -> sudo chmod o+t /tmp

清楚。