我正在運行Ruby on Rails 4.1.1,我想通過檢查這些URI是否在給定的域名中來驗證URI。也就是說,uri
字符串可以作爲params
發送到我的控制器,我想檢查該uri
「是否」指向我的應用程序域名www.myapp.com
。當然,uri
應該是有效的URI reference。如何通過檢查是否引用給定的域名來驗證URI?
# Invalid URIs
www.website.com
http://www.website.com
http://www.website.com/
https://www.website.com/
ftp://www.website.com/
ftps://www.website.com/
http://www.website.com/some/path
# Valid URIs
www.myapp.com
http://www.myapp.com
http://www.myapp.com/
https://www.myapp.com/
ftp://www.myapp.com/
ftps://www.myapp.com/
http://www.myapp.com/some/path
我該如何做(可能只使用Ruby on Rails)?
注意:爲了允許用戶設置自定義重定向,我正在驗證URI,我知道vulnerabilities。我計劃使用我的application_controller.rb
中所述的方法運行驗證。
使用此 - http://ruby-doc.org/stdlib-2.1.1/libdoc/uri/rdoc/URI.html –