UW STUDENT VETERAN LIFE DOCUMENTATION

Overview

The purposes of this application is to log user entries to a database to record when and for which reason a student enters the SVL office.

Pulling Data

CSV records can be pulled at the admin panel provided that the person has access to that resouce.

Documentation

Routes


POST Routes

/api/logins

Use /api/logins to POST a student login to the database. The POST body must be a JSON body.

Each request must have a student identifier which can be one of the following:

  • magStripCode: Magstrip code from a card swipe
  • netId: Student's UW Net ID
  • sid: Student number

Alongside the student identifier, a reason must be included as to why the student is trying to sign in.

Underlying Technologies


The implementation for this backend is built on a couple of different technologies:

  • NodeJS
  • Express
  • HTTP (Why HTTP is used instead of HTTPS is explained under Azure Hosting)
  • CosmosDB

CosmosDB is a NoSQL database hosted on Azure. Use the Azure Resource Storage Explorer with the appropriate subscription ID to access the stored data. The subscription ID can be obtained via the Azure Portal.

Azure Hosting


Why HTTP and not HTTPS?

A web app on Azure uses NGINX and load balancers for reverse proxying. All HTTPS requests to the Azure server terminate at the load balancer and is then passed on as a regular HTTP request which is why you must use http.createServer() and not https.createServer().

Accessing Azure Resources

To access and manage all Azure Resources, please visit the Azure Portal. From here, you can create, delete, and edit resources within a subscription. These resources are under the "Student Veteran Life" subscription.