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

DynamoDB调用deleteItem返回200状态码但控制台对应条目仍存在

问题排查方向
  • 键类型不匹配:DynamoDB 为强类型数据库,删除操作的键类型必须和写入时完全一致。你代码中传入的userId是字符串类型,如果表中实际存储的该字段为数字类型,DynamoDB 会判定目标条目不存在,而删除不存在的条目默认不会抛出错误,仍会返回200状态码。
  • 键名拼写/大小写不符:DynamoDB 属性名大小写敏感,请确认代码中写的userId和表实际定义的哈希键名拼写、大小写完全一致,匹配不到目标条目时也会无报错返回200。
  • 目标资源不匹配:请确认代码中TableName参数对应的表名、SDK 配置的AWS区域、访问密钥对应的账号,和你控制台登录查看的账号、区域、表完全匹配,开发/生产环境混淆是非常常见的问题。
  • 条件表达式未生效:如果你的请求参数中配置了ConditionExpression,只有条件满足时才会执行删除,条件不满足时删除操作不会生效但仍返回200。你可以在请求参数中添加ReturnValues: 'ALL_OLD',如果响应返回的Attributes字段为空,说明本次请求未匹配到待删除条目。
  • 触发器回写数据:如果你的表配置了DynamoDB Streams并关联了Lambda触发器,删除操作可能触发了Lambda逻辑将该条目重新写入表中,导致刷新后仍能看到数据。
  • 最终一致性延迟(概率极低):DynamoDB控制台默认使用最终一致性读,刚删除后立刻刷新可能存在秒级同步延迟,但若多次刷新后条目仍存在可排除该原因。

补充:你贴出的代码片段缺少方法调用的闭合括号,若你确认请求已成功返回200可忽略该语法问题。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.05 20:54:03