我正在尝试使用 Go 的 gin 框架将文件上传到 Amazon S3。由于 aws-sdc 需要读取文件,我需要使用 os.open('filename') 打开文件。但是由于我从“formFile”获取文件,所以我没有要打开的文件的路径,os.Open()所以给出错误
该系统找不到指定的文件。
我的做法如下
package controllers
import (
"bytes"
"log"
"net/http"
"os"
"github.com/gin-gonic/gin"
"github.com/aws/aws-sdk-go/aws"
"github.com/aws/aws-sdk-go/aws/credentials"
"github.com/aws/aws-sdk-go/aws/session"
"github.com/aws/aws-sdk-go/service/s3"
)
const (
S3_REGION = "MY REGION"
S3_BUCKET = "<MY BUCKET>"
)
func UploadDocument(c *gin.Context) {
var Buf bytes.Buffer
file, _ := c.FormFile("file")
creds := credentials.NewSharedCredentials("", "default")
s, err := session.NewSession(&aws.Config{
Region: aws.String(S3_REGION),
Credentials: creds,
})
if err != nil {
log.Fatal(err)
}
err = AddFilesToS3(s, file.fileName)
if err != nil { …Run Code Online (Sandbox Code Playgroud)