首页 \ 问答 \ rails:上传图片时ios中的服务器内部错误(rails: server internal error in ios while uploading image)

rails:上传图片时ios中的服务器内部错误(rails: server internal error in ios while uploading image)

当我将图像文件上传到rails webrick服务器时,会提示内部错误“找不到临时目录”,并且没有接收请求。

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];

When I upload image file to rails webrick server, an internal error "Could not find a temporary directory" is prompted, and there is no receive request.

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];

原文:https://stackoverflow.com/questions/31851837
更新时间:2024-05-03 19:05

最满意答案

这种情况下的解决方案是使用解决方法专注于第一个可用的文本框。 在这个例子中,我只在用户使用IE 11时添加了这个焦点功能。在我的基本模式页面中:

@Override
public void renderHead(IHeaderResponse response)
{
    response.render(JavaScriptHeaderItem.forScript(
        "if (Object.hasOwnProperty.call(window, 'ActiveXObject') && !window.ActiveXObject) {" +
        "   $(document).ready(function(){$('input[type=text]').first().focus();});" +
        "}",
        "IE11Focus"));
}

The solution to this case is to use a work around to focus on the first available text box. In this example, I am only adding this focus feature when the user is using IE 11. In my base modal page:

@Override
public void renderHead(IHeaderResponse response)
{
    response.render(JavaScriptHeaderItem.forScript(
        "if (Object.hasOwnProperty.call(window, 'ActiveXObject') && !window.ActiveXObject) {" +
        "   $(document).ready(function(){$('input[type=text]').first().focus();});" +
        "}",
        "IE11Focus"));
}

相关问答

更多

相关文章

更多

最新问答

更多
  • python的访问器方法有哪些
  • 使用Zend Framework 2中的JOIN sql检索数据(Retrieve data using JOIN sql in Zend Framework 2)
  • 透明度错误IE11(Transparency bug IE11)
  • linux的基本操作命令。。。
  • 响应navi重叠h1和nav上的h1链接不起作用(Responsive navi overlaps h1 and navi links on h1 isn't working)
  • 在C中读取文件:“r”和“a +”标志的不同行为(Reading a File in C: different behavior for “r” and “a+” flags)
  • NFC提供什么样的带宽?(What Kind of Bandwidth does NFC Provide?)
  • 元素上的盒子阴影行为(box-shadow behaviour on elements)
  • Laravel检查是否存在记录(Laravel Checking If a Record Exists)
  • 设置base64图像的大小javascript - angularjs(set size of a base64 image javascript - angularjs)
  • 想学Linux 运维 深圳有哪个培训机构好一点
  • 为什么有时不需要在lambda中捕获一个常量变量?(Why is a const variable sometimes not required to be captured in a lambda?)
  • 在Framework 3.5中使用服务器标签<%=%>设置Visible属性(Set Visible property with server tag <%= %> in Framework 3.5)
  • AdoNetAppender中的log4net连接类型无效(log4net connection type invalid in AdoNetAppender)
  • 错误:发送后无法设置标题。(Error: Can't set headers after they are sent. authentication system)
  • 等待EC2实例重启(Wait for an EC2 instance to reboot)
  • 如何在红宝石中使用正则表达式?(How to do this in regex in ruby?)
  • 使用鼠标在OpenGL GLUT中绘制多边形(Draw a polygon in OpenGL GLUT with mouse)
  • 江民杀毒软件的KSysnon.sys模块是什么东西?
  • 处理器在传递到add_xpath()或add_value()时调用了什么顺序?(What order are processors called when passed into add_xpath() or add_value()?)
  • sp_updatestats是否导致SQL Server 2005中无法访问表?(Does sp_updatestats cause tables to be inaccessible in SQL Server 2005?)
  • 如何创建一个可以与持续运行的服务交互的CLI,类似于MySQL的shell?(How to create a CLI that can interact with a continuously running service, similar to MySQL's shell?)
  • AESGCM解密失败的MAC(AESGCM decryption failing with MAC)
  • SQL查询,其中字段不包含$ x(SQL Query Where Field DOES NOT Contain $x)
  • PerSession与PerCall(PerSession vs. PerCall)
  • C#:有两个构造函数的对象:如何限制哪些属性设置在一起?(C#: Object having two constructors: how to limit which properties are set together?)
  • 平衡一个精灵(Balancing a sprite)
  • n2cms Asp.net在“文件”菜单上给出错误(文件管理器)(n2cms Asp.net give error on Files menu (File Manager))
  • Zurb Foundation 4 - 嵌套网格对齐问题(Zurb Foundation 4 - Nested grid alignment issues)
  • 湖北京山哪里有修平板计算机的