2016-05-14 12 views
0

エクスプレスでnode.jsサーバーを持っています。このサーバーには、フォームが記入されたときに呼び出されるPOSTが含まれています。今、POSTは、期待どおりに動作し、現在私は使用しています:node.jsサーバーからHTMLページにデータを表示

res.status('Tweets').send(tweettxt); 

tweettxtは、すべてのつぶやきが返されるの対象であると。これで、このオブジェクトを表示する空白のページが作成されますが、このデータの形式で既存のHTMLページに動的に追加する方法はありますか?

答えて

2

私はあなたがHTML pages.Which言及したサーバから受信したデータを表示するためにタグを使用してきたようにエンジンをテンプレート化EJSを使用していると仮定。あなたは、データを表示するために<%= tweettxt %>次のようにタグを使用することができますhtmlPage.ejsで

res.render('htmlPage',{ 
    tweettxt:tweettxt 
}); 

して、データを表示することができます。

フォームを送信するためにajaxを使用している場合は、jqueryを使用してtwitterレスポンスオブジェクトをループし、指定したとおりに動的にhtmlページに表示できます。

0

POSTにajaxを使用して、結果を処理したり、投稿後にページをレンダリングすることができます。

サーバー側でハンドルバーを使用するためにレンダリングする最も簡単な方法。

res.header('Content-Type', 'text/html; charset=utf-8'); 
res.status(200).send(
    Handlebars.compile(
     fs.readFileSync(
      path.join(
       __dirname, 
       'template.html' 
      ) 
     ).toString('utf-8') 
    )(tweettxt) 
); 

template.html:

<html> 
<body> 
</body> 
</html> 

http://handlebarsjs.com/#getting-started

関連する問題