首页 > 随笔档案 > EventSource (node.js 与 OC)

EventSource (node.js 与 OC)

Publish:

node.js服务器代码:

var http = require('http');
 
http.createServer(function (req, res) {
    res.writeHead(200, { 'Transfer-Encoding': 'chunked', 'Content-Type': 'text/event-stream' });
  
    setInterval(function() {
        var packet = 'event: hello_event\ndata: {"message":"' + new Date().getTime() + '"}\n\n';
        res.write(packet);
    }, 1000);
}).listen(9009);

 OC代码(需要借助封装的类:EventSource)

EventSource *source = [EventSource eventSourceWithURL:[NSURL URLWithString:@"http://127.0.0.1:9009/"]];
[source onReadyStateChanged:^(Event *event) {
    NSLog(@"READYSTATE: %@", event);
}];
 
[source addEventListener:@"hello_event" handler:^(Event *e) {
    NSLog(@"%@: %@", e.event, e.data);
}];

声明: 本文采用 BY-NC-SA 授权。转载请注明转自: levy