You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
ojizero bf448819fb
resource class and tests
преди 3 години
src resource class and tests преди 3 години
test resource class and tests преди 3 години
.gitignore futher setup and module skeleton преди 3 години
.npmignore futher setup and module skeleton преди 3 години
LICENSE Initial commit преди 3 години
README.md futher setup and module skeleton преди 3 години
package-lock.json workout on method specification преди 3 години
package.json workout on method specification преди 3 години
tsconfig.json resource class and tests преди 3 години
tsconfig.spec.json restructure method, split client into interface and implementation преди 3 години

README.md

# portal > HTTP API clients ... simplified.

Installation

npm install --save @ojizero/portal

Usage

Aimed to be used as a building block for API client libraries

/// In your library or definition file
import portal from '@ojizero/portal'

const client = portal({ baseUrl: 'some.base.url' }) // Initial configuration can be passed here

// Get method without path variables
client.route('someGetMethod', { path: '/some/path' })

// Get method with path variables
client.route('someGetMethodWithParam', { path: '/some/path/:withInnerVariable' })

export default client

/* ******************* */

/// In your application
import YourClient from 'your-client-module'

const client = YourClient() // You can also pass additional options to futher configure the client

const someGetMethodPromise = client.someGetMethod() // GET http://some.base.url/some/path
const someGetMethodWithParamPromise = client.someGetMethodWithParam(5) // GET http://some.base.url/some/path/5