第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

golang base64編碼vs nodejs緩沖區(qū)base64編碼

golang base64編碼vs nodejs緩沖區(qū)base64編碼

Go
富國滬深 2021-04-02 18:15:10
我正在使用base64在node中編碼的軟件,如下所示:const enc = new Buffer('test', 'base64')console.log(enc) 顯示:<Buffer b5 eb 2d>我正在編寫需要與此互操作的golang服務(wù)。但是我無法在go中重現(xiàn)以上結(jié)果。package mainimport (    "fmt"    b64 "encoding/base64")func main() {    // Attempt 1    res := []byte(b64.URLEncoding.EncodeToString([]byte("test")))    fmt.Println(res)    // Attempt 2    buf := make([]byte, 8)    b64.URLEncoding.Encode(buf, []byte("test"))    fmt.Println(buf)}上面的照片:[100 71 86 122 100 65 61 61][100 71 86 122 100 65 61 61]兩者都與節(jié)點的輸出完全不同。我懷疑區(qū)別在于節(jié)點將字符串存儲為base64字符串中的字節(jié),而go將字符串存儲為ascii / utf8字符串中表示為base64的字節(jié)。但是還沒有弄清楚節(jié)點如何做!我略過go源進(jìn)行編碼,然后嘗試找到Buffer的Node源,但是經(jīng)過一會兒的搜索后,決定在這里發(fā)布可能會更快,希望有人能立即獲得答案。
查看完整描述

1 回答

?
函數(shù)式編程

TA貢獻(xiàn)1807條經(jīng)驗 獲得超9個贊

此構(gòu)造函數(shù):


new Buffer('test', 'base64')

test使用base64編碼對輸入字符串進(jìn)行解碼。它不對test使用base64進(jìn)行編碼。請參閱參考資料:


new Buffer(string[, encoding])

string 要編碼的字符串。

encoding 的編碼string。默認(rèn)值: 'utf8'。

等效的Go代碼為:


data, err := base64.StdEncoding.DecodeString("test")

if err != nil {

    panic(err)

}

fmt.Printf("% x", data)

哪些輸出(在Go Playground上嘗試):


b5 eb 2d

要在Node.js中進(jìn)行編碼,請使用(有關(guān)詳細(xì)信息,請參見如何在node.js中進(jìn)行Base64編碼?):


Buffer.from("test").toString('base64')


查看完整回答
反對 回復(fù) 2021-04-19
  • 1 回答
  • 0 關(guān)注
  • 287 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號