天天看點

Node.js Base64 Encoding和Decoding

如何在Node.js中encode一個字元串呢?是否也像在PHP中使用base64_encode()一樣簡單?

  在Node.js中有許多encoding字元串的方法,而不用像在JavaScript中那樣定義各種不同的全局函數。下面是如何在Node.js中将一個普通字元串encode成Base64格式的代碼:

  下面是decode base64字元串的代碼:

  如果你想了解上面代碼的實作細節,請接着往下看。

  構造函數new Buffer()的第一個參數可以是一個Number,Array或String。第二個參數為可選參數,用來表示encode的類型,可以是AscII, Utf8, Ucs2, Base64, Binary, 或Hex。預設值是Utf8。

  通過第二個參數,告訴程式給定的字元串是以哪種特定格式被encode的。注意上面decode的例子中我們傳入的參數。

  我們通過toString()方法将encode的字元串轉換成其它格式,預設為Utf8。指定不同的參數,可以轉換成我們想要的格式。例如我們可以将Base64之後的字元串轉換成Hex格式:

  然後通過下面的方式将其decode成人類能看懂的字元串:

Node.js Base64 Encoding和Decoding
Node.js Base64 Encoding和Decoding

PS:Utf8是AscII的超集。如果你隻能使用标準英文鍵盤上的字元,則可以使用AscII編碼;但是如果你正在處理其它“外來”字元或符号,例如⌘, こんにちは, Üdvözöljük等,請使用Utf。

本文轉自Jaxu部落格園部落格,原文連結:http://www.cnblogs.com/jaxu/p/6087109.html,如需轉載請自行聯系原作者