| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667 |
- package utils
- import (
- "bytes"
- "encoding/gob"
- "encoding/json"
- "fmt"
- "io"
- "net/http"
- "os"
- "strings"
- )
- func CovertJsonAndDownload(path string, dest string) (err error) {
- dataFile := dest + "/someData.json"
- out, err := os.Create(dataFile)
- if err != nil {
- return err
- }
- defer out.Close()
- // Get the data
- resp, err := http.Get(path)
- if err != nil {
- return err
- }
- defer resp.Body.Close()
- bodyBytes, err := io.ReadAll(resp.Body)
- content := string(bodyBytes)
- //以字串过滤所有url到本地
- if strings.Contains(content, "https://4dkk.4dage.com/720yun_fd_manage/") {
- content = strings.ReplaceAll(content, "https://4dkk.4dage.com/720yun_fd_manage/", "/data/")
- }
- if strings.Contains(content, "https://4dkk.4dage.com/scene_edit_data") {
- content = strings.ReplaceAll(content, "https://4dkk.4dage.com/", "/data/")
- }
- filterContent, _ := json.Marshal(content)
- fmt.Println("data json:", string(filterContent))
- buf := &bytes.Buffer{}
- //err = json.NewEncoder(buf).Encode(&filterContent)
- ////err = json.NewDecoder(buf).Decode(&filterContent)
- //if err != nil {
- // return err
- //}
- enc := gob.NewEncoder(buf)
- err = enc.Encode(content)
- if err != nil {
- return err
- }
- // Writer the body to file
- _, err = io.Copy(out, buf)
- if err != nil {
- return err
- }
- return nil
- }
|