Security News
GitHub Removes Malicious Pull Requests Targeting Open Source Repositories
GitHub removed 27 malicious pull requests attempting to inject harmful code across multiple open source repositories, in another round of low-effort attacks.
@moltin/request
Advanced tools
[![npm version](https://img.shields.io/npm/v/@moltin/request.svg)](https://www.npmjs.com/package/@moltin/request) [![semantic-release](https://img.shields.io/badge/%20%20%F0%9F%93%A6%F0%9F%9A%80-semantic--release-e10079.svg)](https://github.com/semantic-r
🎮 Minimal Moltin API request library for Node
yarn add @moltin/request # npm install @moltin/request
const { MoltinClient } = require('@moltin/request')
// import { MoltinClient } from '@moltin/request'
const client = new MoltinClient({
client_id: '...'
})
client
.get('products')
.then(console.log)
.catch(console.error)
⚠️ You should not use client credentials on the client-side. You will expose your client secret, read more about authentication here.
const { MoltinClient } = require('@moltin/request')
// import { MoltinClient } from '@moltin/request'
const client = new MoltinClient({
client_id: '...',
client_secret: '...'
})
client
.post('brands', {
name: 'My Special Brand',
slug: 'my-special-brand',
status: 'live'
})
.then(console.log)
.catch(console.error)
client
.put('brands/:id', {
name: 'My Special Brand!'
})
.then(console.log)
.catch(console.error)
client
.delete('brands/:id')
.then(console.log)
.catch(console.error)
To prevent unnecessary authentication requests, you will want to use a storage adapter.
const { MoltinClient } = require('@moltin/request')
const NodeStorageAdapter = require('@moltin/node-storage-adapter')
const client = new MoltinClient({
client_id: '...',
storage: new NodeStorageAdapter('./localStorage')
})
client
.get('products')
.then(console.log)
.catch(console.error)
This library uses cross-fetch to make requests. If you wish to change this library, you can pass a custom fetch when instantiating a new moltin client.
const { MoltinClient } = require('@moltin/request')
const fetchEverywhere = require('fetch-everywhere')
const client = new MoltinClient({
client_id: '...',
fetch: fetchEverywhere
})
client
.get('products')
.then(console.log)
.catch(console.error)
const { MoltinClient } = require('@moltin/request')
// import { MoltinClient } from '@moltin/request'
const client = new MoltinClient({
client_id: '...',
client_secret: '...',
fetch: customFetch,
storage: new NodeStorageAdapter('./moltin'),
host: '...',
version: '...',
application: '...',
currency: '...',
customer_token: '...',
headers: {
// ...
}
})
The Moltin API provides you the ability to send various request headers that change the way data is stored or retrieved.
By default this library will encode all data as JSON, however you can customise this by setting your own Content-Type
header as an additional argument to get
, post
, put
and delete
.
This argument can be used to get products by enabled currency, language or even use for uploading files to Moltin.
Note: If you add the Content-Type
custom header to post
, put
or delete
you will need to encode data
yourself.
const { MoltinClient } = require('@moltin/request')
const client = new MoltinClient({
client_id: '...'
})
const headers = {
'X-Moltin-Currency': 'gbp'
}
client
.get('products', headers)
.then(console.log)
.catch(console.error)
The examples below demonstrate how you connect this library with other frameworks and tools.
FAQs
[![npm version](https://img.shields.io/npm/v/@moltin/request.svg)](https://www.npmjs.com/package/@moltin/request) [![semantic-release](https://img.shields.io/badge/%20%20%F0%9F%93%A6%F0%9F%9A%80-semantic--release-e10079.svg)](https://github.com/semantic-r
We found that @moltin/request demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 2 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
GitHub removed 27 malicious pull requests attempting to inject harmful code across multiple open source repositories, in another round of low-effort attacks.
Security News
RubyGems.org has added a new "maintainer" role that allows for publishing new versions of gems. This new permission type is aimed at improving security for gem owners and the service overall.
Security News
Node.js will be enforcing stricter semver-major PR policies a month before major releases to enhance stability and ensure reliable release candidates.