我对Rails相当新,我的问题如下:
我正在通过我的服务器向远程网站发出GET请求,并将响应作为HTML提交给我的前端。
不幸的是,我从远程站点解析的HTML引用了静态文件,导致ActionController :: RoutingError(没有路由匹配[GET]“......”)
如何在控制器中抑制这些错误,以免它们出现在我的浏览器控制台中?
代码如下:
def get_page
url = URI.parse('[website]')
req = Net::HTTP::Get.new(url.path)
res = Net::HTTP.start(url.host, url.port) {|http|
http.request(req)
}
@result = res.body
respond_to do |format|
format.html { render :text => @result }
end
end
感谢任何帮助!
答案 0 :(得分:0)
我已经想到了这一点,但我不确定这是否是一个非常优雅的解决方案。
在我的routes.rb中,我将以下行放在所有已定义路径的底部:
get '*static' => 'home#static_404'
然后我将以下方法放在我的“家庭控制器”中:
def static_404
render :nothing => true
end
似乎有效,但我不喜欢Rails如何强迫我使用 * [random_letters] 来定义此错误路径。
* 不会似乎单独工作,但如果我事后输入任何内容,那就可以了。