/ / Como eu exibo um site externo na minha exibição de trilhos? - ruby-on-trilhos, rubi, iframe

Como faço para exibir um site externo na minha visão de trilhos? - rubi sobre trilhos, rubi, iframe

Estou tentando criar uma exibição no meu aplicativo Rails que espelha uma página em um site externo. Então, basicamente, em vez de vincular à página externa, essa página externa já será mostrada na minha exibição.

Existe uma maneira de fazer isso sem usar o iFrame ou essa é a única maneira?

Respostas:

4 para resposta № 1

Você pode usar o Javascript para carregar o conteúdo de um site externo e mostrá-lo em sua exibição.

Aqui está o código:

<script>
$("#externalSiteContent").load("http://www.example.com/index.html");
</script>
<div id="externalSiteContent"></div>

2 para resposta № 2

Esta é uma abordagem completa:

class YahooController < ApplicationController

layout false

def show
url = URI.parse("http://www.yahoo.com/")
req = Net::HTTP::Get.new(url.to_s)
res = Net::HTTP.start(url.host, url.port) {|http|
http.request(req)
}

@body = res.body
end

end

Na visão

# views/yahoo/show.html.haml
= @body.html_safe

Claro, você precisará de uma rota para isso.

# routes.rb
get "/yahoo", :to => "yahoo#show"