First things first, version of various dependencies
Ubuntu - 15.04
NodeJS - 6.10.3
NPM - 3.10.10
Sails - 0.12.13
Second, here's what I did:
1. Installed Sails globally
2. In the directory /var/www
, ran the command sails new app
3. Created a file UserController.js
in api/controllers/v1
4. Created a file User.js
in api/models
Code for UserController.js
module.exports = {
findOne: function(req, res) {
return res.send("Hello World!!! User -> findOne");
},
login: function(req, res) {
return res.send("Hello World!!! User -> login");
}
}
Code for User.js
module.exports = {}
Now, when I start my server using sails lift
, here's what happens:
- Browse http://localhost:1337/v1/user/1 - Page Not Found (404)
- Browse http://localhost:1337/v1/user/login
Hello World!!! User -> Login
I know I'm going to sound silly, but I thought it is probably because I didn't use the Generator feature of Sails. So, here's what I did next: sails generate api v1/Product
. And the file structure after this command is like this:
api
|-- controllers
|-- v1
|-- UserController.js
|-- V1
|-- ProductController.js
|-- models
|-- User.js
|-- V1
|-- Product.js
I wrote similar code in ProductController.js
as I did in UserController.js
and I expected that now the Product API should work but the result was same as in case of /v1/user/1
.
As per the SailJS Blueprint API, this should have worked. So, can anyone explain why this is happening and how can I make /v1/user/1
and /v1/user/login
both work as expected.
via Rohit Aggarwal
No comments:
Post a Comment