<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                企業??AI智能體構建引擎,智能編排和調試,一鍵部署,支持知識庫和私有化部署方案 廣告
                ## 單文件上傳 ``` import ( "fmt" "github.com/gin-gonic/gin" "psoriasis/common" "math/rand" "os" "path" "runtime" "time" ) func upload(){ file, err := c.FormFile("file") if err != nil { fmt.Println(err) return } if file.Size > 1024 * 1024 *20 { fmt.Println("上傳圖片大小不能超過20MB") return } ext := path.Ext(file.Filename) // 文件后綴 rnd := rand.New(rand.NewSource(time.Now().UnixNano())) // 文件名 filename := fmt.Sprintf("%06v", rnd.Int31n(1000000)) //驗證后綴名是否符合要求 var AllowExtMap = map[string]bool{ ".jpg":true, ".jpeg":true, ".png":true, } if _,ok := AllowExtMap[ext];!ok{ fmt.Println("文件類型錯誤") return } //創建目錄 uploadDir := "statics/uploads/images/" + time.Now().Format("2006/01/") err = os.MkdirAll( uploadDir , 777) if err != nil { fmt.Println("沒有權限創建目錄") return } filename := uploadDir + time.Now().Format("20060102150405") + filename + ext // 保存文件 if err = c.SaveUploadedFile(file, filename); err != nil { fmt.Println(err.Error()) return } imagePath := "http://127.0.0.1:8080"+filename fmt.Println(imagePath) } ``` ## 多文件上傳 ```go form, _ := c.MultipartForm() files := form.File["upload[]"] for _, file := range files { log.Println(file.Filename) // 上傳文件至指定目錄 // c.SaveUploadedFile(file, filename) } ``` ## 七牛云上傳 ```go import ( "context" "fmt" "github.com/gin-gonic/gin" "github.com/qiniu/api.v7/v7/auth/qbox" "github.com/qiniu/api.v7/v7/storage" "project/config" "path" ) func UploadFile(c *gin.Context){ file, _ := c.FormFile("file") f, _ := file.Open() fmt.Println(f) //return if file.Size > 1024 * 1024 *10 { fmt.Printf("文件大小不能超過10M") return } ext := path.Ext(file.Filename) //驗證后綴名是否符合要求 var AllowExtMap = map[string]bool{ ".jpg":true, ".jpeg":true, ".png":true, } if _,ok := AllowExtMap[ext];!ok{ fmt.Printf("文件類型錯誤") return } putPolicy := storage.PutPolicy{ Scope: config.Bucket, } mac := qbox.NewMac(config.AccessKey, config.SecretKey) upToken := putPolicy.UploadToken(mac) cfg := storage.Config{} // 空間對應的機房 cfg.Zone = &storage.ZoneHuanan // 是否使用https域名 cfg.UseHTTPS = true // 上傳是否使用CDN上傳加速 cfg.UseCdnDomains = false // 構建表單上傳的對象 formUploader := storage.NewFormUploader(&cfg) ret := storage.PutRet{} // 可選配置 putExtra := storage.PutExtra{} err := formUploader.PutWithoutKey(context.Background(), &ret, upToken, f, file.Size, &putExtra) if err != nil { fmt.Println(err) return } fmt.Println(ret.Key, ret.Hash) } ```
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看