如何在SPA中组织我的api路线与我的页面路线?

时间:2016-06-25 15:41:46

标签: node.js api express web single-page-application

假设我有资源squids

我的应用中有一个页面添加squids,其中包含描述其墨迹等的表单,我想这个表单应该在localhost/squid

然后要求制作新鱿鱼的帖子要到同一个地方localhost/squid

但是当我想要GET所有鱿鱼的清单时呢?您如何构建和命名这些相似的路线?

 // app/routes/squid.js

 router.get('/', (req, res) => res.render('squid'));

 router.post('/', (req, res) => {
     saveSquid();
     res.render('dashboard');
 });

1 个答案:

答案 0 :(得分:1)

我建议为所有api调用添加一个前缀,如下所示:

GET /api/squids // will get squids back 

然后您仍然可以使用/ squids来呈现页面。

您还可以使用快速路由器模块为api创建不同的路由器:

var app = express();
var apiRouter = express.Router();
apiRouter.get('/squids', function(req,res){});

var pubRouter = express.Router();
pubRouter.get('/squids', function(req, res){})
app.use('/api', apiRouter);
app.use('/', pubRouter);