Comment puis-je obtenir le contenu d'une requête http en Ruby?

voix
12

En PHP, je peux le faire:

$request = http://www.example.com/someData;
$response = file_get_contents($request);

Comment puis-je faire la même chose en Ruby (ou une méthode Rails?)

J'ai été googler pendant une demi-heure et à venir complètement à court.

Créé 27/08/2009 à 05:46
source utilisateur
Dans d'autres langues...                            


4 réponses

voix
19

L'ensemble de la bibliothèque standard open-uriest ce que vous êtes après:

require 'open-uri'
contents = open('http://www.example.com') {|io| io.read}
# or
contents = URI.parse('http://www.example.com').read
Créé 27/08/2009 à 16:03
source utilisateur

voix
10
require 'net/http'
Net::HTTP.get(URI.parse('http://www.example.com/index.html'))

Je ne sais pas pourquoi je ne l'ai trouvé plus tôt. À moins qu'il ya une meilleure façon, je vais avec ça!

Créé 27/08/2009 à 06:00
source utilisateur

voix
0

Utilisation de la bibliothèque nette / http comme indiqué:

require 'net/http'

response = Net::HTTP.get_response('mysite.com','/api/v1/messages')
p response.body
Créé 11/06/2011 à 09:50
source utilisateur

voix
0

Selon vous essayer

<%= request.inspect %>
Créé 27/08/2009 à 05:52
source utilisateur

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more