我试图为我的lambda函数的main.go文件导入main.go,但是每次我保存导入时都会消失。
我有一些简单的Golang代码,试图通过更新dynamodb表来更新访问者计数。
构建始终失败,说明属性值未定义,但我无法将导入保存为属性值。
package main
import (
"context"
"log"
"github.com/aws/aws-lambda-go/events"
"github.com/aws/aws-lambda-go/lambda"
"github.com/aws/aws-sdk-go-v2/aws"
"github.com/aws/aws-sdk-go-v2/config"
"github.com/aws/aws-sdk-go-v2/feature/dynamodb"
"github.com/aws/aws-sdk-go-v2/service/dynamodb"
)
func handler(request events.APIGatewayProxyRequest) (events.APIGatewayProxyResponse, error) {
cfg, err := config.LoadDefaultConfig(context.TODO(), config.WithRegion("us-east-1"))
if err != nil {
log.Fatalf("unable to load SDK config, %v", err)
}
svc := dynamodb.NewFromConfig(cfg)
// Build the request with its input parameters
resp, err := svc.UpdateItem(context.TODO(), &dynamodb.UpdateItemInput{
TableName: aws.String("table-name"),
Key: map[string]*dynamodb.attributevalue{
"ID": {
S: aws.String("visitors"),
},
},
UpdateExpression: aws.String("ADD visitors :inc"),
ExpressionAttributeValues: map[string]*dynamodb.attributevalue{
":inc": {
N: aws.String("1"),
},
},
})
if err != nil {
log.Fatalf("Got error callingUpdateItem: %s", err)
}
return events.APIGatewayProxyResponse{
Headers: map[string]string{
"Access-Control-Allow-Origin": "*",
"Access-Control-Allow-Methods": "*",
"Access-Control-Allow-Headers": "*",
},
StatusCode: 200,
}, nil
}
func main() {
lambda.Start(handler)
}当我去做模特儿的时候我得到了
github.com/aws/aws-sdk-go-v2/featrues/dynamodb: no required module provides package github.com/aws/aws-sdk-go-v2/featrues/dynamodb; to add it:去吧,去找github.com/aws/aws-sdk-go-v2/featrues/dynamodb
go: module github.com/aws/aws-sdk-go-v2@upgrade found (v1.16.11), but does not contain package github.com/aws/aws-sdk-go-v2/featrues/dynamodb我是个新手,不知道该怎么解决这个问题。任何帮助都将不胜感激。
发布于 2022-08-15 23:01:53
如果您查看github.com/aws/aws-sdk-go-v2/feature。可用的包是dynamodb/属性值或dynamodb/表达式。看起来您使用的是属性值,所以导入应该有"github.com/aws/aws-sdk-go-v2/feature/dynamodb/attributevalue“
https://stackoverflow.com/questions/73362848
复制相似问题