我一直在尝试从 DynamoDB 表中删除项目,但没有成功,也没有实际错误。 我的删除功能如下:
public async deleteToken(token: string) {
const input: DeleteItemCommandInput = {
TableName: this.tableName,
Key: {
Token: {
S: token,
},
},
};
// https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-dynamodb/classes/deleteitemcommand.html
const command = new DeleteItemCommand(input);
//Send command to DDB
const response = await this.client.send(command);
console.log("response", response);
return response;
}
虽然在邮递员中我得到了成功代码,但实际上什么也没发生。该项目仍在表中。我已经检查过,我在输入中使用的令牌值是正确的。 奇怪的是,响应承诺永远不会解决,而且我没有收到错误。控制台日志如下“const response = wait this.client.send(command);”被忽略。
请问有什么想法吗?
此
Token
字段是否充当 Dynamo 表中的二级索引 (GSI)?据我所知,您只能使用主操作来应用删除操作,因此如果 Token
是 GSI,我想说最简单的方法是分两步完成:
Token
查找)。