1

我的代码:

# app/controllers/log_controller.rb

class LogController < ApplicationController
  def in
    @user = User.login(params[:login])
    respond_to do |format|
      format.js
    end
  end
end

# app/views/log/in.js.erb
redirect_to("/myprofile")

# public/javascript/application.js
function redirect_to(url) { location.href = url; }

在 FF、Chrome 和 Safari 中,每个浏览器都运行良好。用户登录系统并重定向到她的个人资料,但在资源管理器中它要求下载文件!你知道,那个小黄条要求用户下载文件。我认为将 ajax 订单与文件混淆了,但是......为什么?

4

1 回答 1

3

听起来像是 MIME 类型的问题。这是描述问题和解决方案的帖子:http: //agilerails.wordpress.com/2009/05/27/ie-throws-file-download-security-warning-on-form-submit/

基本上,问题在于 IE 的请求标头。您必须使用文本/html 的 MIME 类型才能使其工作。在这个 SO question中有更多关于它的信息。

你有几个选择:

编辑:不太确定这是你想要的所有请求,因为你也在做 AJAX,但在最后一步,当你进行重定向时,你应该提供 text/html MIME 类型。

于 2010-08-30T22:12:33.200 回答