
Security News
The Changelog Podcast: Practical Steps to Stay Safe on npm
Learn the essential steps every developer should take to stay secure on npm and reduce exposure to supply chain attacks.
@worker-tools/json-fetch
Advanced tools
A drop-in replacements for fetch, Request, and Response with first class support for JSON objects.
A drop-in replacements for fetch, Request, and Response with first class support for JSON objects.
Unlike other HTTP libraries, this one stays as close as possible to the original Fetch API, while improving the ergonomics the most common use case:
Before:
const response = await fetch('/some', { 
  method: 'POST',
  body: JSON.stringify(json), 
  headers: {
    'Content-Type': 'application/json',
  },
});
After:
import { JSONRequest } from '@worker-tools/json-fetch';
const response = await fetch(new JSONRequest('/some', { 
  method: 'POST', 
  body: json,
}));
You can also use the updated jsonFetch function:
import { jsonFetch as fetch } from '@worker-tools/json-fetch';
const response = await fetch('/some', { method: 'POST', body: data })
Note that previous use cases remain intact, i.e. posting FormData, ReadableStream, etc. as body works:
const response = await fetch(new JSONRequest('/some', { 
  method: 'POST', 
  body: new FromData(form),
}))
This will send the body as form-data/multipart with correct content type header, as in the original Fetch API.
Only difference is that the Accept header will be set to indicate preference for application/json, i.e. anticipating a JSON response from the server.
This module is part of the Worker Tools collection
⁕
Worker Tools are a collection of TypeScript libraries for writing web servers in Worker Runtimes such as Cloudflare Workers, Deno Deploy and Service Workers in the browser.
If you liked this module, you might also like:
Worker Tools also includes a number of polyfills that help bridge the gap between Worker Runtimes:
Location polyfill for Cloudflare Workers.fetch events using Deno’s native HTTP server.Fore more visit workers.tools.
FAQs
A drop-in replacements for fetch, Request, and Response with first class support for JSON objects.
We found that @worker-tools/json-fetch demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer 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
Learn the essential steps every developer should take to stay secure on npm and reduce exposure to supply chain attacks.

Security News
Experts push back on new claims about AI-driven ransomware, warning that hype and sponsored research are distorting how the threat is understood.

Security News
Ruby's creator Matz assumes control of RubyGems and Bundler repositories while former maintainers agree to step back and transfer all rights to end the dispute.