以下是我为接收请求而创建的结构:
type RequestStruct struct {
StartAt int `json:"startAt"`
EndAt int `json:"endAt"`
}
func Handler(ctx context.Context,request RequestStruct) (Response, error) {
fmt.Printf("Request: %v",request)
我试着用
--raw
所以我试着这么做
serverless invoke -f orders --raw -d '{"startAt":1533513600,"endAt":1534118399}'
我试着用双引号括起来
serverless invoke -f orders --raw -d "{startAt:1533513600,endAt:1534118399}"
serverless invoke -f orders --raw -d "{\"startAt\":1533513600,\"endAt\":1534118399}"
我收到了一个关于这三个的封送错误:
{
"errorMessage": "json: cannot unmarshal string into Go value of type main.RequestStruct",
"errorType": "UnmarshalTypeError"
}
我不确定我做错了什么,我可以在网上找到任何这样的例子,只有这个
serverless doc about how to do the invoke
aws doc about how to handle the event in Go
我试着从AWS控制台调用事件,结果成功了,所以问题很可能出在serverless invoke命令中。