====== Node.js Developer Interview ======
请用 Node.js 加Express或Koa完成此题目。
要求:
* 请尽可能于''一小时内''完成
* 在Node.js环境下使用express或者koa完成即可
* 只要''完成后台部分''的代码即可
* 不要把其他脚手架文件如node_modules压缩在內
* 可以''成功运行''
^ 时限 | 1小时 |
^ 提交方法 | 只需要把相关的**.js**文件以及**package.json**文件用**ZIP**(不可用RAR)压缩后电邮代码至 joe.mao@gz.questwork.com。 |
电邮內必须寫下你的名字 + 微信号 + 手机号,否则不予处理。
===== 目标 =====
* 提供后台REST API给前端购物车使用
* response格式为JSON
===== REST API =====
^ Method ^ Endpoint ^ Resources ^
| GET | http://localhost:8080/all | 获取所有项目 |
| GET | http://localhost:8080/all/:id | 获取对应id的项目 |
| GET | http://localhost:8080/:category/:id | 获取对应分类并且对应id的项目 |
| GET | http://localhost:8080/food | 获取所有分类为food的项目 |
| GET | http://localhost:8080/drink/:id | 获取所有分类为drink并且对应id的项目 |
===== 购物车外观(仅参考) =====
{{:interview:developer:vue_developer:screenshot_2019-09-08_at_6.15.55_pm.png?800|}}
===== 数据结构 Data Structure =====
购物车数据。
[
{ id: 1, name: "Chicken Wing", category: "Food", qty: 3, price: 10 },
{ id: 2, name: "Pizza", category: "Food", qty: 1, price: 50 },
{ id: 3, name: "Hamburger", category: "Food", qty: 1, price: 12 },
{ id: 4, name: "Coca Cola", category: "Drink", qty: 2, price: 5 },
{ id: 5, name: "Orange Juice", category: "Drink", qty: 1, price: 15 },
{ id: 6, name: "Potato Chips", category: "Snack", qty: 1, price: 8 },
{ id: 7, name: "tomato", category: "Vegetable", qty: 1, price: 2 },
]
===== 评分准则 =====
* MVC设计
* 编码整洁
* 准时完成
* 使用ES6
* 能够完成并达到题目要求