Tag: html5

使用RubyOnRails上传HTML5 FormData文件

我使用这个脚本在Rails 3.2.8应用程序中使用HTML5 FormData上传文件(逐个)。 http://jsfiddle.net/RamPr/ $(‘.uploader input:file’).on(‘change’, function() { $this = $(this); $(‘.alert’).remove(); $.each($this[0].files, function(key, file) { $(‘.files’).append(” + file.name + ”); data = new FormData(); data.append(file.name, file); $.ajax({ url: $(‘.uploader’).attr(‘action’), contentType: ‘multipart/form-data’, type: ‘POST’, dataType: ‘json’, data: data, processData: false }); }); }); 但是当我上传文件时,我在控制台中收到此错误: webrick/server.rb:191:in `block in start_thread’ ERROR ArgumentError: invalid %-encoding (“filename.jpeg” Content-Type: image/jpeg […]

表单提交后呈现表单

我正在尝试在提交上一个表单后呈现表单。 例如,假设我有一个只有选择下拉菜单的表单。 您可以选择其中一个选项,单击“继续”(提交按钮),然后在页面重新加载后,它会根据所选类别呈现新表单。 仅供参考,我正在尝试在Rails应用程序中执行此操作。 这是一个例子: http : //popcornindiana.com/contact-us

HTML5缓存和授权问题

将HTML5缓存添加到rails on backbone中编写的单页应用程序后,我遇到了问题。 浏览器(chrome)没有重新加载html,这会以两种方式导致问题: 1)骨干的骨架html有时会发生变化 – 至少让骨干知道用户已登录。但是如果没有加载html,应用程序就不知道(例如刷新后)。 我可以在页面加载时查询服务器,但这是我跳过以避免的另一个请求。 此外,这将强制将所有permisions逻辑移动到客户端 – 因此要么从服务器复制cancan设置或将其嵌入到html中 – 我们遇到上述问题。 2)Rails的csrf标记在html中,它们也不会改变 – 导致任何ajaxpost无效。 对于这个,我不知道该怎么做。 从我读到的csrf令牌是为会话生成的,所以也许在登录/注销时我可以用js更新它。 然而,在哪里得到它,它会工作吗?

Rails以编程方式检测文件的更改

我想编写一个方法,以编程方式检测我的rails应用程序中的任何文件是否已更改。 有可能做一些类似于整个应用程序的MD5并将其存储在会话变量中吗? 这主要是为了获得缓存清单的一些乐趣 。 我已经有一个动态生成的缓存,它在生产中运行良好。 但是在我的开发环境中,每当我更改app目录中的任何内容时,我都希望更新该缓存的id(而不是每10秒,这就是我现在设置它的方式)。 更新 File.ctime(“。”)将是完美的,除了“。”。 更深的目录文件发生更改时,未标记为已更改。 迭代“。”中的所有目录是否有意义。 并将每个的ctimes加在一起?

如何组织HTML表格中的数据字段?

我正在构建一个视图来管理两个模型, Doctor和Schedule 。 我想创建一个html表来保存这些字段。 每列(日)应保持8小时,以便用户友好。 例: ——————————————————————————————— Sunday ! Monday ! Tuesday ! Wednesday ! Thursday ! Friday ! … ——————————————————————————————— hour1 hour1 hour1 hour1 hour1 hour1 hour2 hour2 hour2 hour2 hour2 hour2 … … … … … … hour8 hour8 hour8 hour8 hour8 hour8 ——————————————————————————————— _形成 Sunday Monday Tuesday Wednesday Thursday Friday Saturday 我的想法是通过数组为每天和每小时分配一个默认值,表Schedule有一个is_available列来设置医生时间可用性(布尔值)。 […]

防止在Rails / html5游戏App中作弊(Rails 3.2 / html5 / javascript)

我想知道在下列情况下是否可以防止作弊 我有一个Ruby on Rails应用程序和一个Active Record数据库 我有玩家(模型用户),玩游戏(模型游戏),还有奖品(模特奖)。 我想要的是: 1-防止玩家欺骗/黑客赢取奖金(他赢得的奖品) 2-防止玩家在他拥有的镜头中作弊 由于用户可以赢得多个奖品并且奖品可以属于多个用户,我有很多关系:我用这个表/模型奖金列出了每个用户在游戏中赢得的所有东西(用户有很多奖金和奖品)有很多奖金) 玩家有一定数量的镜头,比方说每个用户3个。 对于1-,基本上,我猜每次用户在游戏中赢得奖品时,我都会向服务器发送一个url:mygame / com /?winning_id = 1234; game_id = 3; user_id = 6; prize_id = 4,告诉id为6的用户在id为6的游戏中以id4赢得奖品 我不希望玩家能够欺骗那个。 我怎样才能做到这一点。 任何玩家都可以使用上面的url,并以这种方式向我的服务器发送消息/动作(post)告诉他他赢了吗? 这会让它变得容易欺骗吗? 我应该加密东西/url,并使我的服务器只能理解url/邮件吗? 对于2- (镜头),我想我应该每次都向服务器端发送动作并在服务器端计算分数,但仍然不能像1-那样欺骗?

SSE(服务器发送的事件)无法正常工作

我正在Chrome中的Rails应用程序(服务器:Puma)中测试SSE,但它们没有被触发: setTimeout((function() { console.log(“log1”); var source = new EventSource(‘/websites/21/backlinks/realtime_push’); source.addEventListener(‘pagination’, function(e) { console.log(“log2”); var data = JSON.parse(e.data); $(‘#pagination’).html(data.html); }); }), 1); 只有“log1”写入控制台。 在开发人员工具中,每次服务器推送某些内容(每秒)时都会看到XHR请求,但响应是空的 – 不确定开发人员工具是否显示它或其他错误。 curl http://localhost:3000/websites/21/backlinks/realtime_push 收益: event: pagination data: {“html”:”pagination”} event: pagination data: {“html”:”pagination”} 所以应该发回数据…… 这可能是什么问题? 更新 :问题是这个猴子补丁解决了来自问题的render_to_string问题: ActionController :: Live与SSE无法正常工作 “这似乎只能解决问题…虽然它会导致控制器实际发送数据,但由于某种原因,JavaScript中的接收端仍然不会收到事件通知” 这很奇怪,因为在两种情况下,当我使用render_to_string时,当我不使用时,我得到与curl相同的标题: HTTP/1.1 200 OK X-Frame-Options: SAMEORIGIN X-XSS-Protection: 1; mode=block X-Content-Type-Options: nosniff […]

如何在纯Javascript HTML Web App中隐藏凭据

有没有办法在纯HTML / Javascript应用程序中隐藏凭据,例如用户眼中的密码或身份validation标头令牌? AngularJS App通过在不同域上运行的CORS与rails后端进行通信。 除了设置更严格的CORS或在后端请求检查域中的域之外,我希望发送auth令牌或向令牌添加令牌。 有人知道吗? 亲切的问候, 亚历克斯

Ruby on Rails:为文件夹中的每个文件生成HTML

我目前有一个包含小* .ogg文件列表的文件夹,我想将其插入到我/ public文件夹的html.erb页面中。 代码在video标签内 – 我想使用Ruby扫描文件夹并为它在文件夹中找到的每个video生成video片段。 除video文件名外,video之间的代码保持不变。 生成的页面将是可播放video的列表。 任何建议都很棒。

Rails,REST架构和HTML 5:具有飞行前请求的跨域请求

在开展项目以使我们的网站HTML 5友好时,我们渴望采用跨域请求的新方法(不再通过隐藏的iframe发布!!!)。 使用访问控制规范,我们开始设置一些测试来validation各种浏览器的行为。 当前的Rails RESTful架构依赖于四个HTTP谓词:GET,POST,PUT,DELETE。 但是,在访问控制规范中,它规定非简单方法(PUT,DELETE)需要使用HTTP谓词OPTIONS的飞行前请求。 此外,在测试期间,我们还发现了Firefox 3.5.8的飞行前POST请求。 我的问题是这个。 是否有人知道Rails框架的任何项目正在解决这个问题? 如果没有,有关支持OPTIONS方法的最佳策略的任何意见,因为它必须支持所有POST,PUT,DELETE方法的路由?