【文件属性】:
文件名称:阿迪达斯技术挑战Node.js
文件大小:114KB
文件格式:ZIP
更新时间:2021-02-24 06:45:49
JavaScript
阿迪达斯技术挑战-订阅系统
这是Adidas NodeJS Backend挑战的解决方案。
内容
要求
我们需要使用以下微服务架构来创建新闻订阅系统:
公共服务:公共网络。 UI前端将使用的前端微服务后端。
订阅服务:专用网络。 微服务实现业务订阅逻辑,包括数据库中的预订数据和电子邮件通知的持久性以确认过程完成。
电子邮件服务:专用网络。 微服务实现电子邮件通知。 没有真正的电子邮件流程,它是一个模拟界面。
订阅系统应提供以下操作:
创建新的订阅
取消现有订阅
获取订阅的详细信息
获取所有订阅
订阅应包含以下信息:
电子邮件
名(可选)
性别(可选)
出生日期
标记同意
广告活动对应的新闻通讯ID
所有服务应接收相同的参数。 非公共服务必须是安全的。
构建并运行
这是一个NodeJS应用程序,可以在本地或通过Docker容器运行。
NodeJS版本: v14.15.4
【文件预览】:
adidas-technical-challenge-nodejs-master
----email-service()
--------.dockerignore(44B)
--------public()
--------config.js(425B)
--------Dockerfile(159B)
--------app.js(1KB)
--------swagger.yml(2KB)
--------bin()
--------routes()
--------package-lock.json(65KB)
--------package.json(532B)
----public-service()
--------.dockerignore(44B)
--------public()
--------config.js(425B)
--------Dockerfile(160B)
--------app.js(1KB)
--------swagger.yml(4KB)
--------bin()
--------routes()
--------package-lock.json(73KB)
--------package.json(524B)
----subscription-service()
--------.dockerignore(44B)
--------public()
--------config.js(425B)
--------model()
--------Dockerfile(166B)
--------app.js(1KB)
--------swagger.yml(5KB)
--------data()
--------tests()
--------bin()
--------routes()
--------package-lock.json(182KB)
--------package.json(751B)
----README.md(5KB)
----docker-compose.yml(692B)
----.gitignore(53B)