2013-04-02 61 views
1

我在一個項目中使用Perl舞者從舞者路線HTTP連接,我想實現的SSE http://www.html5rocks.com/en/tutorials/eventsource/basics/#toc-introduction-differences如何把握

我有我試圖養活一個舞者路線

get '/stream' => sub{ 
    my $response = Dancer::SharedData->response; 
    debug($response->exists); 
    $response->status(200); 
    $response->content("data: cool test\n\n"); 
    $response->content_type('text/event-stream'); 
    $response->header('Cache-Control' => 'no-cache'); 
    $response->header('Connection' => 'Keep-Alive'); 
    $response->pass; 
    return undef; 
}; 

似乎從舞者路線返回任何東西都會關閉連接。理想情況下,我想保持打開狀態並存儲$response以將更多數據推送到更高版本。

更新:進一步研究它看起來像這應該是可能的PSGI其中舞者用途: http://search.cpan.org/~miyagawa/PSGI-1.03/PSGI.pod#Delayed_Reponse_and_Streaming_Body 展望此時中間件的方法。

回答

0

這裏的答案被移動到不同的網絡服務器。我正在使用不支持http連接的starman。移動到mojolicious或twiggy。