2010-11-17 52 views
0

你好堆栈溢出的人。红宝石HttpClient异步

有人知道一个代码示例,使红宝石httpclient做一个异步发布?它有一个方法,但它看起来只是给你一个连接,你必须继续检查,我认为它仍然会被阻止。我没有看到一种方法来“开火并忘记”,或者只是传递一个方法,它可以稍后在单独的线程中调用,而其余的代码仍在运行。

感谢, 克雷格

回答

0

这听起来像是你在事件触发的编程风格。也许你甚至使用eventmachine?你不这么说,但在你这样做的情况下,这个项目:https://github.com/eventmachine/em-http-request会让你做点事情:

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 
    } 
}