REST Service für POPCORN -> ILIAS.
Stellt in ILIAS-SOAP fehlende Funktionen bereit für POPCORN (GS-2101).
Als Erstes wird die ENV Variable "NODE_ENV" gebraucht. Diese muss gesetzt sein.
Je nach ENV (dev, test, prod, ...) muss dann auch die settings Datei angepasst werden.
Der REST-Service an sich muss auf dem gleichen Rechner laufen auf dem auch die ILIAS DB läuft (ansonsten die Config anpassen).
node app.js
bzw. bei Nutzung von pm2 (empfohlen)
pm2 start app.js --name globus-ilias-rest
pm2 save
Apache muss als Proxy für globus-ilias-rest fungieren und Verbindungen an diesen weiterreichen.
ACHTUNG
Der Service muss unter https laufen. Ansonsten kann das AUTH-TOKEN ausgelesen werden.
a2enmod proxy
a2enmod proxy_http
z.B. unter /etc/apache2/sites-available/globusfm-dev2.minervis.com.conf
# Proxy all requests to /popcorn/... to the globus-ilias-rest service
ProxyPreserveHost On
ProxyPass /popcorn http://localhost:4101
ProxyPassReverse /popcorn http://localhost:4101
testen
https://globusfm-dev2.minervis.com/popcorn/users?token=AUTHTOKEN
Es wird ein Auth-Token gebraucht um den Service zu benutzen. Dieses wird in settings.js definiert.
Dann kann der Service angesprochen werden (test mit curl):
curl localhost:4101/users?token=AUTHTOKEN
Die Antwort prettyfeien:
curl localhost:4101/users?token=AUTHTOKEN | jq .
Verfügbare Routen sind:
GET /users
GET /users/count
GET /user/login/:login
GET /user/userId/:userId