util.go 813 B

1234567891011121314151617181920212223242526272829303132333435363738
  1. package gopay
  2. import (
  3. "bytes"
  4. "math/rand"
  5. "time"
  6. )
  7. //获取随机字符串
  8. // length:字符串长度
  9. func GetRandomString(length int) string {
  10. str := "0123456789AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz"
  11. b := []byte(str)
  12. var result []byte
  13. r := rand.New(rand.NewSource(time.Now().UnixNano()))
  14. for i := 0; i < length; i++ {
  15. result = append(result, b[r.Intn(len(b))])
  16. }
  17. return string(result)
  18. }
  19. func generateXml(w requestBody) (reqXml string) {
  20. buffer := new(bytes.Buffer)
  21. buffer.WriteString("<xml>")
  22. for k, v := range w {
  23. buffer.WriteString("<")
  24. buffer.WriteString(k)
  25. buffer.WriteString("><![CDATA[")
  26. buffer.WriteString(v)
  27. buffer.WriteString("]]></")
  28. buffer.WriteString(k)
  29. buffer.WriteString(">")
  30. }
  31. buffer.WriteString("</xml>")
  32. reqXml = buffer.String()
  33. return
  34. }