parrot-mocker
v1.5.0
Published
Intercept requests to the mock server
Downloads
4
Readme
parrot-mocker
This package supports to intercept XHR/JSONP/Fetch requests and forward to the specified mock server.
How to use
Chrome plugin
Install from Chrome web store.
Or load the plugin by following Google's development guide. The plugin folder is crx
.
If the development mode plugin is disabled by Chrome, you can uninstall and install it again.
Standalone
<head>
<!-- Make sure to be loaded first -->
<script type="text/javascript" src="dist/parrot.js"></script>
</head>
Webpack
// Modifiy webpack.config.js to prepend this package to dependencies of each entry
module.exports = {
entry: ['parrot-mocker', './yours/src/entry.js']
};
Node.js
We export a function to rewrite the request url.
wrapUrl(urlStr, options)
- urlStr
string
the url of the API request - options
- reqType
string
the type of request, likejsonp
- pageUrl
string
the url of the page - cookie
string
the cookie of the page request - shouldSkip
function
skip rewritting if returns true. By default, no host or includinglocal
will be filtered. Its arguments are:- host
string
the API host
- host
- reqType
For example, let's make a simple middleware for Koa,
var fetch = require('node-fetch');
var wrapUrl = require('parrot-mocker').wrapUrl;
module.exports = function*(next) {
this.fetch = (url, options) => {
return fetch(wrapUrl(url, {
pageUrl: this.url,
cookie: this.header.cookie
}));
};
yield* next;
};
License
Acknowledgement
- whatwg-fetch, fetch polyfill
- mozilla-doc-cookies, cookie utils
- cortex-cookie-manager, crx sample