是否为Rails 2中的所有页面设置ssl_allowed/ssl_required?
当页面使用SSL/HTTPS时,我发现AJAX调用在我的Rails站点上不起作用。我通过添加是否为Rails 2中的所有页面设置ssl_allowed/ssl_required?,ssl,https,ruby-on-rails-2,Ssl,Https,Ruby On Rails 2,当页面使用SSL/HTTPS时,我发现AJAX调用在我的Rails站点上不起作用。我通过添加 ssl_allowed :action1, :action2, :actionN 给相关的控制员 我预见到这将是一种痛苦,并且在将来很容易出现bug,因为我肯定会忘记在ssl_允许列表中添加操作 在[ssl_requirement][1]gem中,是否有一种方法可以全局打开ssl_allowed/ssl_required,用于我站点中每个控制器的所有操作?我尝试将以下内容添加到ApplicationC
ssl_allowed :action1, :action2, :actionN
给相关的控制员
我预见到这将是一种痛苦,并且在将来很容易出现bug,因为我肯定会忘记在ssl_允许列表中添加操作
在[ssl_requirement][1]gem中,是否有一种方法可以全局打开ssl_allowed/ssl_required,用于我站点中每个控制器的所有操作?我尝试将以下内容添加到ApplicationController,但没有成功:
ssl_allowed :all
我在github找到了grosser的ssl_需求分支,它支持ssl_allowed:all,并用该版本替换了我的gem副本。现在我正在使用ssl\u allowed:全部在我的ApplicationController中,而不是其他任何地方。这正是我想要的。我在github找到了grosser的ssl_需求分支,它支持ssl_allowed:all,并用该版本替换了我的gem副本。现在我正在使用ssl\u allowed:全部在我的ApplicationController中,而不是其他任何地方。这正是我想要的。如果你不想依赖分叉插件,你可以覆盖ssl\u吗?在控制器中:
class ApplicationController < ActionController::Base
...
private
def ssl_allowed?
true
end
end
是否允许添加ssl_?这样的方法只有在代码改为以下内容时才是答案:
def ensure_proper_protocol
if ssl_required? && !request.ssl?
redirect_to "https://" + request.host + request.request_uri
flash.keep
return false
elsif request.ssl? && !ssl_required? && !ssl_allowed?
redirect_to "http://" + request.host + request.request_uri
flash.keep
return false
end
end
如果您不想依赖分叉插件,您可以覆盖ssl\u吗?在控制器中:
class ApplicationController < ActionController::Base
...
private
def ssl_allowed?
true
end
end
是否允许添加ssl_?这样的方法只有在代码改为以下内容时才是答案:
def ensure_proper_protocol
if ssl_required? && !request.ssl?
redirect_to "https://" + request.host + request.request_uri
flash.keep
return false
elsif request.ssl? && !ssl_required? && !ssl_allowed?
redirect_to "http://" + request.host + request.request_uri
flash.keep
return false
end
end
例如:希望它有用