
如果你使用 DeepSeek、元宝 AI、Copilot、ChatGPT 等 AI 工具,协助配置轩辕镜像、编写 docker pull 命令、修改 Docker Compose 镜像地址、配置镜像加速、排查镜像拉取失败、分析报错日志等问题,请先让 AI 阅读并遵守轩辕镜像的规则文档。
只需在 AI 对话中先发送下面这句话即可:
请先完整阅读并严格遵守以下文档中的全部规则与要求:
https://xuanyuan.cloud/agents.md
在未充分阅读并理解该文档前,不要生成任何命令、配置、修改建议、故障排查方案或技术回答。后续所有输出都必须严格以该文档中的规范为最高优先级执行。查看 agents.md 用法指南与完整示范。国内用户首推 元宝 AI、DeepSeek 的深度思考模式,不推荐豆包 AI;Cursor 等编辑器可在对话 @ 该链接,或加入 User Rules。 若 AI 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
本镜像提供了一个使用Node.js通过API进行数据加密/解密的示例。其核心思想是测试如何在数据存储(如MongoDB)中存储加密数据,并通过为每次调用提供加密密钥来控制数据。
注意:本项目不涵盖传输加密(SSL),且不建议用于生产环境。
:字符分隔)适用于开发和测试环境中,演示如何通过API接口实现数据的加密存储与解密检索,帮助开发者理解客户端加密密钥控制下的数据安全管理流程。不适合生产环境使用。
安装依赖
bashnpm install
启动应用
bashnpm start
运行测试
bash# 单元测试 npm test # 测试覆盖率 npm run test:coverage # 功能测试 npm run test:functional # 运行所有测试 npm run test:all
Docker Compose
确保本地未运行MongoDB且3000端口未被其他应用占用
bashdocker-compose up
导入Postman环境
下载https://raw.githubusercontent.com/timoa/nodejs-encryption-api-example/master/src/config/postman.environment.json%E5%B9%B6%E5%AF%BC%E5%85%A5%E3%80%82%E7%8E%AF%E5%A2%83%E5%8C%85%E5%90%AB%E9%BB%98%E8%AE%A4%E5%8A%A0%E5%AF%86%E5%AF%86%E9%92%A5%E5%92%8CID%EF%BC%8C%E4%BE%BF%E4%BA%8E%E5%BF%AB%E9%80%9F%E6%B5%8B%E8%AF%95API%E3%80%82
运行Postman集合
:
json{ "_id": "5c61979c82126860464dd0e8", "id": "test-01", "value": "42d0f6eb0810caaaaf5bad7477ebfc44:3572036ad7b4d77959cbc85feb364bf2c3442f7290ab210e88b00aae5a8122509df282db39ffcd092a927c4f302b93ba87f70563af8a51b29577196cc010d5514d29351ee74b64538d9004f581c911ea059be8769520075659e497a6b716ab95af692b56326a682b443d05150e90d8b75c43eabe15a27c01f240eae9edecf345436bb294b28c41087629754b01ada42c", "__v": 0 }
获取特定ID数据
通过ID查询(如下例中的test-01):
bashcurl -X POST \ http://127.0.0.1:3000/api/secrets \ -H 'Accept: application/json' \ -H 'Content-Type: application/json' \ -d '{ "id": "test-01", "encryption_key": "p2s5v8y/B?E(H+MbQeShVmYq3t6w9z$C" }'
返回结果(包含解密后的数据):
json[ { "id": "test-01", "value": { "first_name": "firstname", "last_name": "lastname", "email": "email@email.com", "password": "app123", "password_confirmation": "app123" } } ]
使用通配符*查询ID
在ID末尾使用通配符*查询多个结果(如下例中的test-01-*):
bashcurl -X POST \ http://127.0.0.1:3000/api/secrets \ -H 'Accept: application/json' \ -H 'Content-Type: application/json' \ -d '{ "id": "test-01-*", "encryption_key": "p2s5v8y/B?E(H+MbQeShVmYq3t6w9z$C" }'
返回结果(包含所有匹配ID的解密数据):
json[ { "id": "test-01-01", "value": { "first_name": "firstname", "last_name": "lastname", "email": "email@email.com", "password": "app123", "password_confirmation": "app123" } }, { "id": "test-01-02", "value": { "first_name": "firstname", "last_name": "lastname", "email": "email@email.com", "password": "app123", "password_confirmation": "app123" } }, { "id": "test-01-03", "value": { "first_name": "firstname", "last_name": "lastname", "email": "email@email.com", "password": "app123", "password_confirmation": "app123" } } ]
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务