【问题标题】:Rails: request.xml?导轨:request.xml?
【发布时间】:2010-02-18 13:46:30
【问题描述】:

我想检查请求是 XML 还是 HTML。当 HTML 页面被重定向到登录表单时(如果用户未登录),当 XML 页面被重定向到未授权状态代码时。

例子:

class ApplicationController < ActionController::Base
  def require_user
    unless current_user
      IF XML
        RESPOND WITH CODE
      ELSE
        redirect_to :controller => :user_sessions, :action => :new, :format => params[:format]
      END
      return false
    end
  end
end

class ProductsController < ApplicationController
  before_filter :require_user
  ...
end

【问题讨论】:

  • 顺便说一句,我正在尝试 if request.format() == Mime::XML render :nothing => true, :status => 500

标签: ruby-on-rails xml authentication authlogic


【解决方案1】:

您应该可以使用格式委托方法:

unless (current_user)
  respond_to do |format|
    format.xml do
      # respond with code
    end

    format.html do
      redirect_to :controller => :user_sessions, :action => :new, :format => params[:format]
    end
  end

  return false
end

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-08-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-04-07
    • 2018-09-01
    • 1970-01-01
    相关资源
    最近更新 更多