JS-301-NodeServer
  • Introduction
  • js_library
    • Node Server
      • 00 - Intro
        • 01 - Purpose
        • 02 - Back-End Setup
        • 03 - Terms Cheat Sheet
      • 01 - Server Set up
        • 01 - npm packages
        • 02 - Express Intro
        • 03 - Express code
      • 02 - Development Tools
        • 01 - Nodemon Intro
        • 02 - Postman Intro
        • 03 - Postman set up
      • 03 - Routes Intro
        • 01 - Routes intro
        • 02 - Express Router() intro
        • 03 - Challenge 1
        • 04 - Challenge 2
      • 04 - Database Intro
        • 00 - DB Intro and Set up
          • 00 - DB Intro
          • 01 - PostgreSQL Intro
          • 02 - Install
        • 01 - Sequelize Intro
          • 01 - Sequelize intro
          • 02 - Initialize
      • 05 - Model View Controller
        • 01 - MVC
          • 00 - MVC Intro
        • 02 - Models
          • 01 - Intro to Models
          • 02 - Test Model
        • 03 - Controllers
          • 00 - Controllers Intro
          • 01 - Controller Set up
          • 02 - Create Method
          • 03 - req.body()
          • 04 - Crafting the Response
          • 05 - Sending the Response
          • 06 - JSON Response
          • 07 - Error Handling
        • 04 - Conclusion
      • 06 - Tokenization
        • 01 - JWT Intro
          • 01 - JWT intro
        • 02 - User Create
          • 01 - User Create
          • 02 - Refactor
        • 03 - User Token
          • 01 - JWT Package
          • 02 - Adding JWT
          • 03 - ENV
      • 07 - Encryption
        • 01 - bcrypt
        • 02 - bcrypt setup
      • 08 - Session
        • 00 - Session Intro
        • 01 - Sign In Method
        • 02 - Sign In Bcrypt
        • 03 - Sign In JWT
      • 09 - Middleware
        • 01 - Test Client HTML
        • 02 - Test Client JS
        • 03 - Middleware intro
        • 04 - Headers intro
        • 05 - Server Update
        • 06 - Test Post
        • 07 - Test Post Refactor
        • 08 - Post Data
        • 09 - Fetch From One
      • 10 - Authenticated Routes
        • 01 - Intro to Authenticated Routes
        • 02 - Validate Session
        • 03 - Changes to app.js
        • 04 - authtestcontroller.js
        • 05 - Delete an Item
        • 06 - Update an Item
        • 07 - Postman Testing
      • 11 - Authenticated Requests
        • 00 - Additions to index
        • 01 - Anatomy of a Request
        • 02 - Create User
        • 03 - Getting a Token
        • 04 - Get Items From One User
        • 05 - Creating an Item for a User
        • 06 - Get one item
        • 07 - Update an Item
        • 08 - Deleting an Item
        • 09 - Deleting with a Custom Event
      • 12 - Workout Log Server
        • 00 - Intro
      • 13 - More Sequelize Functions
        • Migrations
          • 00 - Intro
          • 01 - init and config
          • 02 - Creating the First Migration
          • 03 - Running Migrations
          • 04 - Reverting Migrations
          • 05 - Seeds
          • 06 - Reverting Seeds
        • Queries
          • 00 - Intro
          • 01 - Queries
Powered by GitBook
On this page
  • Code
  • Analysis
  • Test
  1. js_library
  2. Node Server
  3. 11 - Authenticated Requests

00 - Additions to index

Before we get started working on our client on making authenticated requests to our authenticated routes, we'll add more code to our HTML file.

Code

Add the following code to our current index.html file. NOTE: You will be adding to the existing table in the file. These are more rows for that table. You will add this code under the closing </tr> tag in the 5th row. Please copy and paste the following code for now:

<!--PASTE THIS CODE AFTER ROW 5-->
                <tr>
                    <th scope="row">6</th>
                    <td>POST Sign Up
                        <code>/api/user/createuser</code>
                    </td>
                    <td>
                        <span>
                        <input type="text" id="userSignUp" placeholder="Username" />
                        </span>
                        <span>
                        <input type="password" id="passSignUp" placeholder="Password" />
                        </span>
                        <span>
                        <button onclick="userSignUp();">Submit</button>
                        </span>
                    </td>
                    <td>
                        See Console
                    </td>
                </tr>
                <tr>
                    <th scope="row">7</th>
                    <td>POST Sign In
                        <code>/api/user/signin</code>
                    </td>
                    <td>
                        <span>
                        <input type="text" id="userSignin" placeholder="Username" />
                        </span>
                        <span>
                        <input type="password" id="passSignin" placeholder="Password" />
                        </span>
                        <span>
                        <button onclick="userSignIn();">Submit</button>
                        </span>
                    </td>
                    <td>
                        See Console
                    </td>
                </tr>
                <tr>
                    <th scope="row">8</th>
                    <td>Function: Get Session Token</td>
                    <td>
                        <button onclick="getSessionToken();">Print Token</button>
                    </td>
                    <td>
                        See Console
                    </td>
                </tr>
                <tr>
                    <th scope="row">9</th>
                    <td>Authenticated Request
                        <code>/authtest/getall</code>
                    </td>
                    <td>
                        <button onclick="fetchAllFromAuthRoute();">GET</button>
                    </td>
                    <td>
                        See Console
                    </td>
                </tr>
                <tr>
                    <th scope="row">10</th>
                    <td>Authenticated POST Request to <code>/authtest/create</code></td>
                    <td>
                        <input type="text" id="authTestData" placeholder="Enter Data"/>
                        <button onclick="postToAuthRouteCreate();">POST</button>
                    </td>
                    <td>
                        See Console
                    </td>
                </tr>
                <tr>
                    <th scope="row">11</th>
                    <td>GET Single Item
                        <code>/authtest/id</code>
                    </td>
                    <td>
                        <input type="text" id="getNumber" placeholder="Post ID #"/>
                        <button onclick="getOneByUser();">Get Single Item</button>
                    </td>
                    <td>
                        <label id="getItemValue"></label>
                    </td>
                </tr>
                <tr>
                    <th scope="row">12</th>
                    <td>Update Single Item
                        <code>/authtest/update/id</code>
                    </td>
                    <td>
                        <input type="text" id="updateNumber" placeholder="Post ID #"/>
                        <input type="text" id="updateValue" placeholder="New Data"/>
                        <button onclick="updateItem();">Update Item</button>
                    </td>
                    <td>
                        <label id="newItemValue"></label>
                    </td>
                </tr>

                <tr>
                    <th scope="row">13</th>
                    <td>Delete Single Item
                        <code>/authtest/delete/id</code>
                    </td>
                    <td>
                        <input type="text" id="deleteNumber" placeholder="Post ID #"/>
                        <button onclick="deleteItem();">Delete Single Item</button>
                    </td>
                    <td>
                        See Console
                    </td>
                </tr>
                <tr>
                    <th scope="row">14</th>
                    <td>Delete Single Item From DOM</td>
                    <td>
                        <button onclick="fetchFromOneDisplayData();">Display data</button>
                    </td>
                    <td>
                        <ul id="fourteen">
                        </ul>
                    </td>
                </tr>

Analysis

Take a minute to check through the additions. Notice that we've added the following: 1. 8 more table rows 2. Buttons, lists, labels, and input fields added to various rows. 3. Classes and ids in elements for future use. 4. Names of functions that we will soon create.

Test

You should see something similar to the following when you run the application:

Previous11 - Authenticated RequestsNext01 - Anatomy of a Request

Last updated 7 years ago

screenshot