我有以下节点js代码,应该列出DynamoDB表中的所有项目,
import * as dynamoDbLib from "../../libs/dynamodb-lib";
import { success, failure } from "../../libs/response-lib";
export async function main(event, context) {
const params = {
TableName: "brands",
KeyConditionExpression: "brandId = :brandId",
ExpressionAttributeValues: {
":brandId": ''
}
};
try {
const result = await dynamoDbLib.call("query", params);
return success(result.Items);
} catch (e) {
console.log(e);
return failure({ status: false });
}
}
id是uuid格式,当从我的节点js插入时,使用以下方法导入:
import uuid from "uuid";
然后插入到表格中:
brandId: uuid.v1()
现在当我查询表中的项时,我只能得到一条记录,当且仅当我在表达式属性值中对记录的uuid进行硬编码时,所以我考虑添加一个正则表达式来匹配所有的uuids,我的常规表达式是从网络上的某些解决方案中复制的,但它不起作用,如下所示:
[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}
和
\b[0-9a-f]{8}\b-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-\b[0-9a-f]{12}\b
我已经尝试了其他的例子但是没有它们有效,是否正确添加正则表达式以获取所有项目,如果是这样,它的正确正则表达式是什么?
使用“扫描”操作获取表格中的所有项目。