Skip to content

Latest commit

 

History

History
74 lines (61 loc) · 2.79 KB

File metadata and controls

74 lines (61 loc) · 2.79 KB

API for Boknaden

Om

Boknaden APIet kjører på NodeJS og benytter SSL for sikker kommunikasjon, samt JWT for autentisering.

Endpoints

//her kommer det sikkert litt om endpoints

Brukerveiledning

For å kjøre APIet kreves NodeJS runtime versjon 6.10.0 og lokal MySQL database (Apache/Wamp på Windows funker), andre typer databaser støttes gjennom Sequelize.

Anbefaler å benytte terminal/command-line for å laste ned github-prosjektet, hvis du benytter GitHub for Windows (GUI) hopp til steg 5. Windows PowerShell/Terminal må benyttes etter steg 4.

  • Åpne Terminal (mac/linux) eller Windows PowerShell (win).
  • (Valgfritt) Endre aktiv mappe cd /mappe/til/github (mac/linux) eller cd \mappe\til\github (win).
  • (Valgfritt) git clone https://github.com/Boknaden/api.git.
  • Installer nodejs. Alternativ installasjonsinformasjon for linux/mac.
  • Sjekk at installasjonen var vellykket ved kommandoen node -v (Output: v6.10.0).
  • cd til rotmappen hvor APIet befinner seg (samme mappe som server.js) og kjør npm install for å installere bibliotek.
  • Opprett config.js i rotmappen av prosjektet, og fyll ut på følgende måte (endre der det er blokkbokstaver):
module.exports = {
    mysql: {
        host: 'localhost', // anbefaler localhost 1000% av gangene
        user: 'BRUKERNAVN',
        password: 'PASSORD',
        port: 3306,
        database: 'NAVN_PÅ_DATABASE',
    },
    security: {
        saltRounds: 30, // hva det "koster" å utføre hashing (høyere tall er bedre)
        secret: 'boknadensigneringsnokkel',
        tokenExpiration: '48h', // token er gyldig i 48 timer
    },
    email: {
        service: 'gmail',
        user: 'email',
        pass: 'password',
        defaults: {
            from: '',
        }
    }
}
  • Opprett .env i rotmappen av prosjektet, og fyll ut på følgende måte (endre der det er blokkbokstaver):
VERSION=0.0.3
PORT=ÅPEN_PORT_DEFAULT_57483
DEBUG=1
INTERNAL_IP=localhost
VERBOSE=1
SSL=0
  • (Note) SSL benyttes kun på produksjon, og er ikke nødvendig å sette på (1) for testing
  • cd tools/sync for å få tilgang til databasesynkroniseringsverktøyet til boknaden.
  • node sync.js for å laste inn tabellene til databasen (dette avhenger av at du har satt opp databasen riktig).
  • (Valgfritt) Installer nodemon, kjør npm install -g nodemon for debugging.
  • (Valgfritt) Hvis du installerte nodemon, kjør nodemon server.js.
  • Hvis du ikke installerte nodemon, kjør node server.js fra rotmappen.
  • APIet kan nå nås på http://localhost:PORT_DU_VALGTE_OVER/ENDEPUNKT

Ekstra

Endepunktene finner du i /api/-mappen. (ping.js = localhost:57483/ping)