• golang map做排序后,md5加密


    Go map字典排序后md5加密

    package main
    
    import (
        "bytes"
        "crypto/md5"
        "encoding/hex"
        "encoding/json"
        "fmt"
        "sort"
        "strings"
    )
    
    func main() {
        params := make(map[string]interface{})
        params["name"] = "test"
        params["key"] = "123aa!31."
        params["domain"] = "https://www.baidu.com?name=1&id=1"
    
        // 排序
        keys := make([]string, len(params))
        i := 0
        for k, _ := range params {
            keys[i] = k
            i++
        }
        sort.Strings(keys)
        fmt.Println("keys:",keys)
    
        byteBuf := bytes.NewBuffer([]byte{})
        encoder := json.NewEncoder(byteBuf)
        encoder.SetEscapeHTML(false)
    
        err := encoder.Encode(params)
    
        if err != nil {
            panic(err)
        }
    
        data := byteBuf.String()
    
        h := md5.New()
        h.Write([]byte(strings.TrimRight(data, "\n")))
        fmt.Println(hex.EncodeToString(h.Sum(nil)))
    }
  • 相关阅读:
    ROC曲线
    数学建模的时间表和分工
    找寻子串
    被7整除
    Java中BufferedReader和scanner的对比
    机器学习降维方法
    梯度下降法
    天池大赛
    统一认证系统(三)
    软件设计方案
  • 原文地址:https://www.cnblogs.com/zhaoyingjie/p/15826190.html
Copyright © 2020-2023  润新知