2011-07-08 93 views
0

我已經能夠從維基百科中提取頁面,並使用下面的代碼從本地主機提供它們。我希望能夠更改徽標。我試圖用.replace()函數做到這一點,但它不起作用。如何使用nodejs更改頁面的內容

var http = require('http'); 

http.createServer(function (req, res) { 
    console.log(req.url) 
    var options = { 
    host: 'en.wikipedia.org', 
    port: 80, 
    path: req.url, 
    }; 

    var req = http.get(options, function(response) { 
    response.setEncoding('utf8'); 
    response.on('data', function (chunk) { 
     chunk.replace("http://upload.wikimedia.org/wikipedia/en/b/bc/Wiki.png","http://www.sotmclub.com/images/logo.png"); 
     res.write(chunk, 'utf8'); 
    }); 
    res.writeHead(response.statusCode, response.headers); 
    }); 

}).listen(1337, "127.0.0.1"); 
+0

您可以使用jsdom + jQuery http://blog.nodejitsu.com/jsdom-jquery-in-5-lines-on-nodejs – generalhenry

+0

如何將塊放入緩衝區中。然後做str替換?? – Alfred

+0

不是塊已經進入緩衝區?我如何將它們放入緩衝區,然後將它們寫入響應中? – DaneJensen

回答

0

字符串在JavaScript中是不可變的。所有chunk.replace正在做的是返回一個新的字符串。你必須改爲chunk = chunk.replace(...)

+0

謝謝你的工作。 – DaneJensen

相關問題