2010-11-17 3 views
0

Bonjour les gens de débordement de pile. Est-ce que quelqu'un sait d'un exemple de code pour faire le HTTP de ruby ​​faire un post asynchrone? Il a une méthode mais il semble que cela vous donne juste une connexion en arrière que vous devez continuer à vérifier, ce qui, je suppose, bloquerait encore. Je n'ai pas vu un moyen de "tirer et d'oublier" ou simplement passer une méthode qu'il pourrait appeler plus tard dans un fil séparé pendant que le reste de mon code continuait à tourner.Ruby HttpClient async

grâce, craig

Répondre

0

Cela ressemble à vous programmez dans le style evented. Peut-être que vous utilisez même eventmachine? Vous ne le dites pas, mais dans le cas où vous le faites, ce projet: https://github.com/eventmachine/em-http-request vous permettra de faire quelque chose près:

EventMachine.run { 
    http = EventMachine::HttpRequest.new('http://127.0.0.1/').get :query => {'keyname' => 'value'} 

    http.callback { 
    p http.response_header.status 
    p http.response_header 
    p http.response 

    EventMachine.stop 
    } 
}