http.go 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  1. package utils
  2. import (
  3. "bytes"
  4. "encoding/json"
  5. "fmt"
  6. "io"
  7. "net/http"
  8. )
  9. func CheckZipExist(url string) (bool, error) {
  10. res, err := http.Get(url)
  11. if err != nil {
  12. return false, err
  13. }
  14. defer res.Body.Close()
  15. buf := make([]byte, 1024)
  16. n, err := res.Body.Read(buf)
  17. if err != nil {
  18. return false, err
  19. }
  20. fmt.Println(n)
  21. if n != 1024 {
  22. return true, nil
  23. }
  24. return false, nil
  25. }
  26. // 返回succ,fail
  27. func PostJson(data []byte) (string, error) {
  28. req, err := http.NewRequest("POST", VersionApi, bytes.NewBuffer(data))
  29. if err != nil {
  30. return "fail", err
  31. }
  32. req.Header.Set("Content-Type", "application/json")
  33. client := &http.Client{}
  34. resp, err := client.Do(req)
  35. if err != nil {
  36. return "fail", err
  37. }
  38. defer resp.Body.Close()
  39. body, err := io.ReadAll(resp.Body)
  40. if err != nil {
  41. return "fail", err
  42. }
  43. return string(body), nil
  44. }
  45. func GetAppVersion(query string) (*AppVersion, error) {
  46. url := fmt.Sprintf("%s%s", VersionApi, query)
  47. client := &http.Client{}
  48. resp, err := client.Get(url)
  49. if err != nil {
  50. return nil, err
  51. }
  52. defer resp.Body.Close()
  53. body, err := io.ReadAll(resp.Body)
  54. if err != nil {
  55. return nil, err
  56. }
  57. appVersion := &AppVersion{}
  58. err = json.Unmarshal(body, appVersion)
  59. if err != nil {
  60. return nil, err
  61. }
  62. return appVersion, nil
  63. }