在我的Rails控制器中,我有用户输入的url
:
url_parsed = URI.parse(url)
response = Net::HTTP.get_response(url_parsed)
如果用户输入www.google.com
,则会提供
undefined method `request_uri' for #<URI::Generic:0x00000002e07908 URL:www.google.com>
在response = ...
行。
我希望它显示我的错误页面,而不是此错误。我该怎么办?
答案 0 :(得分:1)
不知道您的问题是否无效,或者如何在视图中使用错误消息。
为什么会出现错误
修改强>
我认为这是因为'www.google.com'
中没有协议,'http://www.google.com'
应该正常工作
如何显示错误
拯救错误:
error = nil
begin
url_parsed = URI.parse(url)
response = Net::HTTP.get_response(url_parsed)
rescue => error
end
if error
@error_message = "Your URL wasn't good enough"
# or you can use error.message if you want
# then use @error_message in your view
else
# do stuff when ok
end