SerializationException:找到不期望的结构或映射的开始:API网关到步骤功能
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SerializationException:找到不期望的结构或映射的开始:API网关到步骤功能相关的知识,希望对你有一定的参考价值。
我正在使用标准的博客教程,将api网关与步骤函数集成在一起:https://docs.aws.amazon.com/step-functions/latest/dg/tutorial-api-gateway.html
我的步骤函数需要以下输出:
{
"my_params": {
"config": "config_value"
}
}
如博客中所述,请求机构需要做一个帖子请求:
{
"input": "{}",
"name": "MyExecution",
"stateMachineArn": "arn:aws:states:us-east-1:123456789012:stateMachine:HelloWorld"
}
我正在传递我所需的输入:
{
"input": {
"my_params": {
"config": "config_value"
}
},
"name": "MyExecution",
"stateMachineArn": "my-arn"
}
但是,我不断收到以下错误:
{
"__type": "com.amazon.coral.service#SerializationException",
"Message": "Start of structure or map found where not expected."
}
有人能告诉我这里究竟是什么问题吗?我在这做错了什么?快速帮助表示赞赏
使用转义字符作为参数,如下所示
{
"input": "{
"my_params": {
"config": "config_value"
}
}",
"name": "MyExecution",
"stateMachineArn": "my-arn"
}
我遇到了类似的问题。我发现需要转义输入参数引号字符但现在遇到这个:
{
"__type": "com.amazon.coral.service#SerializationException"
}
{
"input": "{
"TableName": "Rooms",
"RoomName": "BedRoom1"
}",
"name": "MyExecution",
"stateMachineArn": "arn:aws:states:us-west-1:xxxxxxcx:stateMachine:xxxxx"
}
有什么建议?谢谢
对于遇到以下问题的人,在尝试使用JSON有效负载设置数据时(从控制台)
将JSON有效内容转换为base64字符串
请求主体,例如
{
"Data": {
"name": "Dean",
"role": "actor"
},
"StreamName": "yourstream",
"Partitionkey": "youPartitionKey"
}
}
错误
{
"__type": "SerializationException",
"Message": "Start of structure or map found where not expected."
}
转到方法执行面板 - >集成请求(AWS) - >映射模板 - >请求正文直通
现在添加模板,在模板中编写代码,将Data键的JSON有效负载转换为base64字符串
{
"Data": "$util.base64Encode($input.json('$.Data'))",
....
}
希望这可以帮助!!!谢谢
以上是关于SerializationException:找到不期望的结构或映射的开始:API网关到步骤功能的主要内容,如果未能解决你的问题,请参考以下文章
HashBiMap SerializationException 或如何序列化 IsSerializable 不适用的类?
SerializationException:类型未解析成员“...”
AppDomain 等待异步任务防止 SerializationException
GWT - 偶尔出现 com.google.gwt.user.client.rpc.SerializationException
kotlinx.serialization.SerializationException:找不到类“MultiPartFormDataContent”的序列化程序