nodeJS express框架 中文亂碼解決辦法


    最近在研究javascript 的服務端應用 node,之所以想要研究node,是因為前幾個月一直在前端掙扎,從javascript入門到在項目中實際使用javascript,確實感悟頗深。javascript的書籍看了《javascript權威指南》,這本書確實對javascript的入門很不錯,之后看了《JavaScript設計模式與開發實踐》,這本書我當做是邊學javascript知識,邊學一下設計模式,也很不錯。廢話少說,這幾天看了一下nodejs,發現雖然是新的知識,當感覺卻很熟悉,跟python 的tornado的web框架很像,乃至nodejs都可以看到python的影子,比如說模塊的引入等等。

分享一下如何解決node后端response給web服務器亂碼的解決辦法:

var express = require('express');
var app = express();
var bodyParser = require('body-parser');

// 創建 application/x-www-form-urlencoded 編碼解析
var urlencodedParser = bodyParser.urlencoded({ extended: false })

app.use(express.static('public'));

app.get('/index.html', function (req, res) {
   res.sendFile( __dirname + "/" + "index.html" );
})

app.post('/process_post', urlencodedParser, function (req, res) {

   // 輸出 JSON 格式
   res.writeHead(200,{'Content-Type':'text/html;charset=utf-8'});//設置response編碼為utf-8
   response = {
       first_name:req.body.first_name,
       last_name:req.body.last_name
   };
   console.log(response);
   res.end(JSON.stringify(response));
})

var server = app.listen(8081, function () {

  var host = server.address().address
  var port = server.address().port

  console.log("應用實例,訪問地址為 http://%s:%s", host, port)

})

 如上所示:

res.writeHead(200,{'Content-Type':'text/html;charset=utf-8'})
這里設置回復編碼為utf-8

另外要想做到萬無一失:建議html,js文件的編碼格式設置為utf-8,這里我使用sublime輕易就可以設置了

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM