1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56
|
var express = require('express');
var app = express();
var FeedParser = require('feedparser')
var request = require('request');
var req = request('http://www.slate.fr/rss.xml')
var feedparser = new FeedParser();
app.get('/', function(req, res) {
req.on('error', function (error) {
// handle any request errors
});
req.on('response', function (res) {
var stream = this;
if (res.statusCode != 200) return this.emit('error', new Error('Bad status code'));
stream.pipe(feedparser);
});
feedparser.on('error', function(error) {
// always handle errors
});
feedparser.on('readable', function() {
// This is where the action is!
var stream = this
meta = this.meta // **NOTE** the "meta" is always available in the context of the feedparser instance
item;
while (item = stream.read()) {
res.render('/');
console.log(item.title || item.description);
}
});
app.get('/sous-sol', function(req, res) {
res.setHeader('Content-Type', 'text/plain');
res.end('Vous êtes dans la cave à vins, ces bouteilles sont à moi !');
});
app.get('/etage/salon', function(req, res) {
res.render('salon.ejs', {etage: req.params.etagenum});
});
app.use(function(req, res, next){
res.setHeader('Content-Type', 'text/plain');
res.send(404, 'Page introuvable !');
});
});
app.listen(8080); |
Partager