评论

微信小程序上传文件到七牛云

小程序上传图片到七牛云

## 准备工作

注册七牛云账号,添加存储桶

后端 Golang 生成 上传凭证 token

```

var (
    accessKey = "七牛"
    secretKey = "七牛"
    bucket    = "桶名"
)

// GetQiniuToken 客户端上传获取上传凭证
func GetQiniuToken(c *gin.Context) {
    mac := credentials.NewCredentials(accessKey, secretKey)

    putPolicy, err := uptoken.NewPutPolicy(bucket, time.Now().Add(1*time.Hour))
    putPolicy.SetReturnBody(`{"key":"$(key)","hash":"$(etag)"}`)
    if err != nil {
    
       return
    }
    upToken, err := uptoken.NewSigner(putPolicy, mac).GetUpToken(context.Background())
    fmt.Println(upToken)
    var token = map[string]string{
       "token": upToken,
    }
    return token
}


```

小程序

```

const uploadTask = wx.uploadFile({

url: '七牛云所在区域', //仅为示例,非真实的接口地址

filePath: "文件路径",

name: 'file',

formData: {

'token':'七牛token',

},

success: res => console.log("---- 上传成功 -----", res),

fail: err => console.log("---- 上传失败 ----", err)

})


uploadTask.onProgressUpdate((res) => {

console.log("----- 上传进度 -----", res.progress);

if(res.progress < 100){

wx.showLoading({

title: `上传中 ${res.progress}%`,

});

} else if (res.progress == 100){

// 进度达到100时显示结果

wx.showToast({

title: '完成',

icon: 'success'

});

}

})


```

最后一次编辑于  01-15  
点赞 0
收藏
评论
登录 后发表内容