API example with user auth service.
Make sure that you have local mongo installed and running without auth (testing purposes only).
Install mfw-cli if not installed yet.
# npm install @microservice-framework/mfw-cli -g
Clone this repo
# git clone https://github.com/microservice-framework/api-todo-example-2.git
Cloning into 'api-todo-example-2'...
remote: Counting objects: 11, done.
remote: Compressing objects: 100% (10/10), done.
remote: Total 11 (delta 1), reused 6 (delta 0), pack-reused 0
Unpacking objects: 100% (11/11), done.
# cd api-todo-example-2
Application folder is a bundle for all services.
Install all services that a part of this bundle
# mfw setup
- downloading microservice-router
- downloading example-todo
- downloading microservice-auth
- downloading microservice-users
- downloading microservice-users-login
- copiyng microservice-users-login to /Volumes/DATA/gor/tmp/api-todo-example-2/services/microservice-users-login
- copiyng microservice-users to /Volumes/DATA/gor/tmp/api-todo-example-2/services/microservice-users
- copiyng example-todo to /Volumes/DATA/gor/tmp/api-todo-example-2/services/example-todo
- updating dependencies for microservice-users-login
- updating dependencies for example-todo
- updating dependencies for microservice-users
- copiyng microservice-router to /Volumes/DATA/gor/tmp/api-todo-example-2/services/microservice-router
- updating dependencies for microservice-router
- copiyng microservice-auth to /Volumes/DATA/gor/tmp/api-todo-example-2/services/microservice-auth
- updating dependencies for microservice-auth
[ok] /Volumes/DATA/gor/tmp/api-todo-example-2/services created.
[ok] /Volumes/DATA/gor/tmp/api-todo-example-2/logs created.
[ok] /Volumes/DATA/gor/tmp/api-todo-example-2/pids created.
[ok] /Volumes/DATA/gor/tmp/api-todo-example-2/configs created.
[ok] github:microservice-framework/microservice-users-login updated.
[ok] @microservice-framework/microservice-auth updated.
[ok] @microservice-framework/microservice-router updated.
[ok] github:microservice-framework/example-todo updated.
[ok] github:microservice-framework/microservice-users updated.
[war] /Volumes/DATA/gor/tmp/api-todo-example-2 already exists.
[war] .gitignore already exists
start all service
# mfw start all
- starting example-todo:start
- starting microservice-users:start
- starting microservice-users-login:start
- starting microservice-auth:start
- starting microservice-router:start-proxy
- starting microservice-router:start-admin
[ok] example-todo:start started
[ok] microservice-users:start started
[ok] microservice-users-login:start started
[ok] microservice-auth:start started
[ok] microservice-router:start-proxy started
[ok] microservice-router:start-admin started
[war] failed to read .env file. Creating default one.
wait 30 seconds until route will be cached.
run script to add user to database
# NODE_PATH=services/microservice-users/node_modules node create-user.js
null
{ login: 'user',
role: 'user',
hash:
{ salt: 'SvEkKqzW5KQXiy15hN3faIFY0CsSRzNEcNOjPWZWPsrJYex067GoQg8GJmaWBdo/qzQCHvFL9jf2VJ3TLp8LFErF94isnDzP8jDCvFbI0WeNC3Hj2p5ExxjVURh8iEhaJX04DiHAUKOXd5dm40nISVbUGKJNAyJT5PTEPjM/lgo=',
iterations: 1000,
keylen: 512,
digest: 'sha512',
hash: '1b89e77893efaf69f10f92b2afa61f7fd95a2c8a7cbf582763b98434097d2662519a96d60703d44e5dfe252f771ca94c5402b6398e0db1268ae2f9da48fddb4d771855d57044255c3e80d3d556850f1c44e0a61819c26063dcd30d02fc3d5a1f721c34ff423f88439465d0b665e9f140b1f885bbe8909436f9c0cd9ad01546920e44f5a4f76904ca787f48ec731c6d0ba5a8ca063fd4de0dbe8d02e87743dc16c487729953573418f65c1b01c56aef1624d779bcd5b1cf31141f177ec27975028382058a77e7b9b43d562cb89959acc1bf06a1bef866a9262091248e3e6392f1035500328099b96c9872b8ff5f5c6cb184318c3d0cdedca19aeea813f9bf7f6070a53ad3aaf0468ac2a660cdace54c32dd37363b2c3d4c2f24a026ff9b0de8ec385e55b45b0fcc5772ce51cb3c3e0c02ce80db4bff50332704dec7c8d40add82168966aa693698998000093cb4da531c089fbed8c327832405ca87440abf9ae3ac98dadfc79526c5bbb3e5a41f27c629b2e9723370b61ceb1d3a14c913711c1ad761aff134a07fbb6629c9b0729351e568f522cdf28af9469c6d6b757a4d0607e8a16be55e139214cf65bbc661fefe984e14c06774470deaccc0ae0069c228bac00ceea4c2e0dafe84314234278a8ef2314052023c297c564aa75253d81c4ff94527a8611dc0a961e55dab29056426903e2406c87fefd9c85c74cd219d87023c' },
created: 1519186296452,
changed: 1519186296452,
token: 'b4c1f2b5b382c99c0956502d452f610de64be6bf0d8d2582',
url: 'http://localhost:3100/users/user' }
open Example App Page This page will connect your local API. Login with credentials: Login: user, Password: user.