Public API for a society manager application
|
|
il y a 9 ans | |
|---|---|---|
| .gitignore | il y a 9 ans | |
| LICENSE | il y a 10 ans | |
| README.md | il y a 9 ans | |
| index.js | il y a 9 ans | |
| package.json | il y a 10 ans |
Server for Integrated Project, powered by Express.js and Redis
Instructions are for OSX El Capitan at time of writing.
First install the Redis server:
brew install redis
Then clone this repository:
git clone https://github.com/Alpha-Atom/ip-project-server.git
And finally, install the dependencies
npm install
To run, first start Redis:
redis-server
Then start the Express framework using:
node index.js
Returns "Hello :name!" or simply "Hello World!" if no name is present. :)
In order to register a new user account, a POST request should be sent, with
the following data:
{
"user": desired_username_here,
"password": desired_password_here
}
The server will then respond with a JSON object that looks something like this:
{
"registered": 1, // Value is 1 or 0 based on whether registration was
successful
"auth-key": $2a$10$.X9YrNyd2R7b2ycAumHn.ONiINs2bCkRDupugu6sjZkUkPmXSaSra, //
Value is an authentication key to be used in API requests
"error": 0 // Error code, if an error occured. 0 indicates no error.
}
The value of the error code will be 1 if the username already exists.
In order to log into an account, or essentially request a new authentication
token, a POST request should be sent with the following data:
{
"user": username_here,
"password": password_here, // Optional field if auth-key is present
"auth-key": auth_key_here // Optional field if password is present
}
Using the auth-key will reset and generate a new authentication key, whereas password will simply get the current auth-key. In either case the following data will be returned:
{
"logged_in": 1, // Value is 1 or 0 whether or not the login was successful
"auth-key": $2a$10$.X9YrNyd2R7b2ycAumHn.ONiINs2bCkRDupugu6sjZkUkPmXSaSra, //
Only present if logged_in == 1, to be used in API requests
"error": 0 // Error code, if an error occured. 0 indicates no error.
}
The error codes are as follows, 1 indicates the username could not be found,
2 indicates that the password is invalid and 3 indicates the provided
authentication key was invalid.