
Security News
vlt Launches "reproduce": A New Tool Challenging the Limits of Package Provenance
vlt's new "reproduce" tool verifies npm packages against their source code, outperforming traditional provenance adoption in the JavaScript ecosystem.
@tapico/msw-webarchive
Advanced tools
An utility to drive requests handlers through a `.har` web-archive file
A utility to drive requests handlers through a .har
web-archive file for the
Mock Service Worker library. This utility allows you to mock server
handlers by using .har
web-archive file which can be created by using applications like Charles,
ProxyMan or the Chrome Developer Tools.
We have been using it during the development of web-applications, while the backend API endpoints weren't available yet or when we want to reproduce a problem of a customer. This way we can request the customer to send us a .har web-archive file and let this file drive the network requests to our back-end, this has greatly eased reproducing problems reported.
To use this library you need to have a HAR (*.har
) file generated from the network traffic of your
application. Follow the instructions below to learn how to do that.
npm install @tapico/msw-webarchive --save-dev
Follow the Installation instructions from the Mock Service Worker documentation.
import { setupWorker } from 'msw'
import { setRequestHandlersByWebarchive } from '@tapico/msw-webarchive'
import * as traffic from './example.har'
const worker = setupWorker()
setRequestHandlersByWebarchive(worker, traffic)
worker.start()
quiet: boolean
false
Disables the logging of debugging messages of the library.
setRequestHandlersByWebarchive(worker, har, {
quiet: true,
})
strictQueryString: boolean
true
Stricly match a request URL query parameters during request URL matching. When set to false
,
request URL query parameters are ignored during matching.
setRequestHandlersByWebarchive(worker, har, {
strictQueryString: false,
})
resolveCrossOrigins: (origin: string) => string
undefined
Override the Access-Control-Allow-Origin
response header whenever it's present.
setRequestHandlersByWebarchive(worker, har, {
resolveCrossOrigins(origin) {
return '*'
},
})
domainMappings: Record<string, string>
undefined
Allow mapping the domains in your har file to something else. This may be useful if you are making
relative requests against the origin (eg. fetch('/hello')
), you may want to use a domainMapping
configuration like:
setRequestHandlersByWebarchive(worker, har, {
domainMappings: {
'http://example.com': 'http://localhost',
},
})
responseDelay: 'real' | 'none' | ResponseDelayFunction
real
Controls the mock response delay behavior.
time
property in the HAR(timeDelay: number, requestContext: Request) => number
timeDelay
: the value of the time
property in the HAR, or 0 if there is no time
propertyrequestContext
: the request intercepted by Mock Service WorkersetRequestHandlersByWebarchive(worker, har, {
responseDelay: 'none'
})
setRequestHandlersByWebarchive(worker, har, {
responseDelay: (timeDelay: number, requestContext: Request) => {
if (requestContext.url === 'http://example.com') {
return timeDelay * 2
}
return 0
}
})
FAQs
An utility to drive requests handlers through a `.har` web-archive file
The npm package @tapico/msw-webarchive receives a total of 708 weekly downloads. As such, @tapico/msw-webarchive popularity was classified as not popular.
We found that @tapico/msw-webarchive demonstrated a healthy version release cadence and project activity because the last version was released less than 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
vlt's new "reproduce" tool verifies npm packages against their source code, outperforming traditional provenance adoption in the JavaScript ecosystem.
Research
Security News
Socket researchers uncovered a malicious PyPI package exploiting Deezer’s API to enable coordinated music piracy through API abuse and C2 server control.
Research
The Socket Research Team discovered a malicious npm package, '@ton-wallet/create', stealing cryptocurrency wallet keys from developers and users in the TON ecosystem.