Skip to content

About Sample APIs are created using NodeJS, ExpressJS , SQLite where the user can perform various authentication operations on the data base like creating the user identity( user registration), updating the password or changing passwords and user login. Passwords are encrypted before they are stored into the data base using nodeJS packages.

Notifications You must be signed in to change notification settings

NitishKamini/Authentication-

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Authentication

Given an app.js file and a database file userData.db consisting of a table user.

Write APIs to perform operations on the table user containing the following columns,

User Table

Column Type
username TEXT
name TEXT
password TEXT
gender TEXT
location TEXT

API 1

Path: /register

Method: POST

Request

{
  "username": "adam_richard",
  "name": "Adam Richard",
  "password": "richard_567",
  "gender": "male",
  "location": "Detroit"
}
  • Scenario 1

    • Description:

      If the username already exists

    • Response

      • Status code
        400
        
      • Status text
        User already exists
        
  • Scenario 2

    • Description:

      If the registrant provides a password with less than 5 characters

    • Response

      • Status code
        400
        
      • Status text
        Password is too short
        
  • Scenario 3

    • Description:

      Successful registration of the registrant

    • Response

      • Status code
        200
        
      • Status text
      User created successfully
      

API 2

Path: /login

Method: POST

Request

{
  "username": "adam_richard",
  "password": "richard_567"
}
  • Scenario 1

    • Description:

      If an unregistered user tries to login

    • Response

      • Status code
        400
        
      • Status text
        Invalid user
        
  • Scenario 2

    • Description:

      If the user provides incorrect password

    • Response

      • Status code
        400
        
      • Status text
        Invalid password
        
  • Scenario 3

    • Description:

      Successful login of the user

    • Response

      • Status code
        200
        
      • Status text
        Login success!
        

API 3

Path: /change-password

Method: PUT

Request

{
  "username": "adam_richard",
  "oldPassword": "richard_567",
  "newPassword": "richard@123"
}
  • Scenario 1

    • Description:

      If the user provides incorrect current password

    • Response

      • Status code
        400
        
      • Status text
        Invalid current password
        
  • Scenario 2

    • Description:

      If the user provides new password with less than 5 characters

    • Response

      • Status code
        400
        
      • Status text
        Password is too short
        
  • Scenario 3

    • Description:

      Successful password update

    • Response

      • Status code
        200
        
      • Status text
        Password updated
        

Use npm install to install the packages.

Export the express instance using the default export syntax.

Use Common JS module syntax.

About

About Sample APIs are created using NodeJS, ExpressJS , SQLite where the user can perform various authentication operations on the data base like creating the user identity( user registration), updating the password or changing passwords and user login. Passwords are encrypted before they are stored into the data base using nodeJS packages.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published