首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >继续使用SAM为lambda函数保存main.go文件导入失败和无法保存导入

继续使用SAM为lambda函数保存main.go文件导入失败和无法保存导入
EN

Stack Overflow用户
提问于 2022-08-15 15:04:47
回答 1查看 84关注 0票数 0

我试图为我的lambda函数的main.go文件导入main.go,但是每次我保存导入时都会消失。

我有一些简单的Golang代码,试图通过更新dynamodb表来更新访问者计数。

构建始终失败,说明属性值未定义,但我无法将导入保存为属性值。

代码语言:javascript
复制
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)
}

当我去做模特儿的时候我得到了

代码语言:javascript
复制
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

代码语言:javascript
复制
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

我是个新手,不知道该怎么解决这个问题。任何帮助都将不胜感激。

EN

回答 1

Stack Overflow用户

发布于 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“

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73362848

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档