offline-gateway

0.1.12 • Public • Published

🍄 Offline gateway

demo

File based API gateway,
🎉 specially offline-gateway support DynamoDB local stream

npm -g i offline-gateway

Usage

Define API TYPE and PATH in filename.

METHOD.PATH1.PATH2.PATHN.js

touch {post,get}.user.js

and write code

bat {post,get}.user.js
───────┬──────────────────────────────────────────────────
       │ File: post.user.js
───────┼──────────────────────────────────────────────────
   1   │ module.exports = (event, context, callback) => {
   2   │   return {
   3   │     statusCode: 201,
   4   │     body: 'Created',
   5   │   }
   6   │ }
───────┴──────────────────────────────────────────────────
───────┬──────────────────────────────────────────────────
       │ File: get.user.js
───────┼──────────────────────────────────────────────────
   1   │ module.exports = (event, context, callback) => {
   2   │   return {
   3   │     statusCode: 200,
   4   │     body: JSON.stringify([])
   5   │   }
   6   │ }
───────┴──────────────────────────────────────────────────
tree
.
├── ...(ignoring)
├── post.user.js
└── get.user.js

Run offline-gateway or ogw

$ offline-gateway # or ogw 
🍄 Callgate ready to work on port 3000

And USE

http post localhost:3000/user
HTTP/1.1 201 Created
Connection: keep-alive
Content-Length: 7
Content-Type: text/html; charset=utf-8
Date: Sun, 21 Oct 2018 17:49:06 GMT
ETag: W/"7-rM9AyJuqT6iOan/xHh+AW+7K/T8"
X-Powered-By: Express
 
Created
$ http get localhost:3000/user
HTTP/1.1 200 OK
Connection: keep-alive
Content-Length: 2
Content-Type: text/html; charset=utf-8
Date: Sun, 21 Oct 2018 17:49:11 GMT
ETag: W/"2-l9Fw4VUO7kr8CvBlt4zaMCqXZ0w"
X-Powered-By: Express
 
[] 

PORT

PORT=5945 ogw

DynamoDB local stream

touch ddb.region.port.tableName.js

module.exports = (event) => {
  console.log('records', event)
}

offline-gateway polling stream's(first shard, DynamoDB support only one stream) first shard by 1 second.

Features

  • Hot reloading
  • DynamoDB local stream(limited, very initial version)

Link

License

MIT

Readme

Keywords

none

Package Sidebar

Install

npm i offline-gateway

Weekly Downloads

2

Version

0.1.12

License

MIT

Unpacked Size

14.2 kB

Total Files

13

Last publish

Collaborators

  • deptno