You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用AWS SDK JS v3创建SNS主题时DataProtectionPolicy解析错误求助

解决SNS CreateTopic时DataProtectionPolicy解析错误
  • 错误原因:你在CreateTopicCommand里填的DataProtectionPolicy: 'STRING_VALUE'是AWS文档里的占位符,并非合法的JSON格式,SNS服务无法解析这个无效字符串,因此抛出解析错误。

  • 解决方案1:如果不需要配置数据保护策略,直接删除该参数即可,这是最直接的修复方式:

const createTopicResponse = await client.send(
    new CreateTopicCommand({
        Name: 'PushNotificationTestTopic',
    })
)
  • 解决方案2:如果确实需要配置数据保护策略,必须传入合法的JSON字符串(不能用占位符)。以下是一个基础的合规策略示例:
// 定义符合AWS规范的数据保护策略对象
const dataProtectionPolicy = {
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Principal": "*",
            "Action": [
                "SNS:Publish",
                "SNS:Subscribe"
            ],
            "Resource": "*",
            "Condition": {
                "StringEquals": {
                    "aws:PrincipalType": "Service"
                }
            }
        }
    ]
};

// 转换为JSON字符串后传入参数
const createTopicResponse = await client.send(
    new CreateTopicCommand({
        DataProtectionPolicy: JSON.stringify(dataProtectionPolicy),
        Name: 'PushNotificationTestTopic',
    })
)

注意:数据保护策略的格式必须严格遵循AWS的规范,核心要求是传入有效的JSON字符串,不能使用文档中的占位符文本。

内容的提问来源于stack exchange,提问作者realtebo

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.14 16:52:07