Security News
New Python Packaging Proposal Aims to Solve Phantom Dependency Problem with SBOMs
PEP 770 proposes adding SBOM support to Python packages to improve transparency and catch hidden non-Python dependencies that security tools often miss.
@amadeus-it-group/kassette
Advanced tools
Development server, used mainly for testing, which proxies requests and is able to easily manage local mocks.
kassette is a development server, used mainly for testing, which proxies requests and
is able to easily manage local mocks.
To use it:
npm install @amadeus-it-group/kassette
package.json
scripts: kassette -c kassette.config.js
kassette.config.js
:/**
* @return { import("@amadeus-it-group/kassette").ConfigurationSpec }
*/
exports.getConfiguration = () => {
return {
port: 4200,
mocksFolder: './mocks-folder',
remoteURL: 'http://127.0.0.1:3000',
mode: 'local_or_download',
hook: async ({ mock }) => {
if (!mock.request.pathname.startsWith('/api/')) {
mock.setMode('remote');
return;
}
mock.setLocalPath([mock.request.pathname.split('/').slice(1), mock.request.method]);
},
};
};
Now run your script to launch the proxy!
With this configuration, input requests targeting URLs starting with /api/
will get processed, and local mocks will be used if present, otherwise data will be downloaded from http://127.0.0.1:3000
with a forwarded request, persisted and used for future input requests.
Note that kassette can also be configured to run as a browser proxy, reading the target URL from the request, and intercepting HTTPS communications.
Check Getting started to learn more.
This is a Node.js project using npm for dependency management, so ensure you have those two properly installed. Node.js LTS onwards is supported.
With npm, you can install it in two locations:
node_modules/.bin/kassette
)kassette
(not advised for self-contained projects)Besides where it is installed, you have at least two ways to install it:
@amadeus-it-group/kassette
Clone this repository, and run npm link
to install it globally on your computer.
If you want to use it globally only, then there is nothing more to do.
If you want to install it locally though, you need to add one more step. You won't be able to use a package.json
dependency, but you can install it manually using npm link @amadeus-it-group/kassette
from inside your project.
It is advised to start with the Getting started article which describes a few practical usage examples, then check the configuration guide and the API guide. The API reference is also available.
See developer guide for details.
FAQs
Development server, used mainly for testing, which proxies requests and is able to easily manage local mocks.
We found that @amadeus-it-group/kassette demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 0 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
PEP 770 proposes adding SBOM support to Python packages to improve transparency and catch hidden non-Python dependencies that security tools often miss.
Security News
Socket CEO Feross Aboukhadijeh discusses open source security challenges, including zero-day attacks and supply chain risks, on the Cyber Security Council podcast.
Security News
Research
Socket researchers uncover how threat actors weaponize Out-of-Band Application Security Testing (OAST) techniques across the npm, PyPI, and RubyGems ecosystems to exfiltrate sensitive data.