@pollyjs/node-server
TypeScript icon, indicating that this package has built-in type declarations

6.0.6 • Public • Published

Polly.JS

Record, Replay, and Stub HTTP Interactions

Build Status npm version license

The @pollyjs/node-server package provides a standalone node server as well as an express integration to be able to support the REST Persister so recordings can be saved to and read from disk.

Installation

Note that you must have node (and npm) installed.

npm install @pollyjs/node-server -D

If you want to install it with yarn:

yarn add @pollyjs/node-server -D

Documentation

Check out the Node Server documentation for more details.

Server

This packages includes a fully working standalone node server that is pre-configured with the necessary APIs and middleware to support the REST Persister.

The Server constructor accepts a configuration object that can be a combination of the below listed Server & API options. Once instantiated, you will have full access to the Express app via the app property.

const { Server } = require('@pollyjs/node-server');
const server = new Server({
  quiet: true,
  port: 4000,
  apiNamespace: '/polly'
});

// Add custom business logic to the express server
server.app.get('/custom', () => {
  /* Add custom express logic */
});

// Start listening and attach extra logic to the http server
server.listen().on('error', () => {
  /* Add http server error logic */
});

Express Integrations

The @pollyjs/node-server package exports a registerExpressAPI method which takes in an Express app and a config to register the necessary routes to be used with the REST Persister.

const { registerExpressAPI } = require('@pollyjs/node-server');

registerExpressAPI(app, config);

License

Copyright (c) 2018 Netflix, Inc.

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Package Sidebar

Install

npm i @pollyjs/node-server

Weekly Downloads

39,035

Version

6.0.6

License

Apache-2.0

Unpacked Size

397 kB

Total Files

17

Last publish

Collaborators

  • offirgolan
  • jasonmit