[英]AWS SAM Lambda - Unable to import module 'main': No module named 'requests', 'msal' . pipeline using Azure CI/CD
[英]Keep getting build fail and unable to save import for main.go file for lambda function using SAM CLI
I'm trying to import "github.com/aws/aws-sdk-go-v2/feature/dynamodb/attributevalue" for my main.go file for my lambda function but every time I save the import disappears.
我有一些简单的 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)
}
当我做 go mod vendor 时,我得到
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:
做 go 得到 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
我对 Go 很陌生,不知道如何解决这个问题。 任何帮助将不胜感激。
如果您检查 github.com/aws/aws-sdk-go-v2/feature。 可用的包是 dynamodb/attributevalue 或 dynamodb/expression。 看起来您正在使用属性值,因此导入应该具有“github.com/aws/aws-sdk-go-v2/feature/dynamodb/attributevalue”
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.