awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
request avatar

request/request-promise

0
View on GitHub↗

Request Promise

This project is a promise-based HTTP client for Node.js that wraps callback-style network requests into promise objects. It serves as a library for sending JSON, form data, and multipart requests to web servers while managing asynchronous flow control.

The library utilizes a specialized Bluebird promise implementation to handle request and response lifecycles. It includes a session manager that uses a cookie jar to maintain and transmit state across multiple network calls.

The tool covers a broad range of network capabilities, including REST API integration, response data transformation, and full HTTP response capture. It provides mechanisms for request cancellation, configurable error handling for non-success status codes, and network traffic debugging.

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Features

  • Promise-Based HTTP Clients - Wraps callback-style HTTP requests into promise objects to manage asynchronous network flow without nesting.
  • Asynchronous HTTP Calls - Enables making asynchronous HTTP requests using promises instead of traditional callbacks for simplified error and response handling.
  • REST API Integrations - Sending and receiving JSON data through HTTP requests to communicate with web services and external application interfaces.
  • HTTP Cookie Management - Manages session state across multiple network calls using a cookie jar to handle session cookies.
  • Request Body Encoders - Provides mechanisms to encode request bodies as JSON, URL-encoded forms, or multipart data for standard web transfers.
  • Node.js HTTP Clients - Serves as a comprehensive Node.js library for sending JSON, form data, and multipart requests to web servers.
  • Session & Cookie Handlers - Uses a cookie jar to store and send cookies across multiple requests to maintain session state.
  • Web Session Management - Maintains state across multiple network calls by storing and sending cookies using a cookie jar.
  • Callback-to-Promise Converters - Transforms standard Node.js error-first callbacks into promise resolve and reject states for consistent async handling.
  • Request Body Attachers - Transforms JavaScript objects into JSON or multipart form data strings before transmission over the network.
  • API Error Handling - Allows configuration to determine if the promise should reject based on HTTP status codes or only on network failures.
  • HTTP Response Processors - Captures full response objects and transforms raw body data into specific formats for application use.
  • Request Cancellations - Provides the ability to abort active network requests to stop associated processes from resolving or rejecting.
  • Configurable Promise Resolutions - Allows callers to decide whether non-success HTTP status codes trigger a promise rejection or a resolution.
  • Full Response Captures - Enables returning the complete HTTP response object, including status codes and headers, instead of only the response body.
  • API Response Transformations - Implements custom functions to transform raw response bodies into different formats before they are used by the application.
4,722 stars·286 forks·JavaScript·ISC·22 views

Star history

Star history chart for request/request-promiseStar history chart for request/request-promise

How this analysis was created: This summary and feature list are AI-generated from collected project material and can contain mistakes. Stars, license and language are imported from GitHub. Inclusion does not mean that we have tested or audited this project. Check the source documentation for any feature you depend on. Learn more on our About page.

Frequently asked questions

What does request/request-promise do?

This project is a promise-based HTTP client for Node.js that wraps callback-style network requests into promise objects. It serves as a library for sending JSON, form data, and multipart requests to web servers while managing asynchronous flow control.

What are the main features of request/request-promise?

The main features of request/request-promise are: Promise-Based HTTP Clients, Asynchronous HTTP Calls, REST API Integrations, HTTP Cookie Management, Request Body Encoders, Node.js HTTP Clients, Session & Cookie Handlers, Web Session Management.

Which projects share features with request/request-promise?

Projects with overlapping indexed features include: amitshekhariitbhu/fast-android-networking — 🚀 A Complete Fast Android Networking Library that also supports HTTP/2 🚀. bitinn/node-fetch — node-fetch is a lightweight HTTP client library that implements the browser-standard Fetch API for Node.js. It… mzabriskie/axios — Axios is a promise-based HTTP client used to make asynchronous network requests in both browser and Node.js… elbywan/wretch — Wretch is a chainable HTTP client library and Fetch API wrapper designed to simplify network request configuration,… kittinunf/fuel — Fuel is a Kotlin HTTP client library for Android and Kotlin applications that handles both synchronous and… rest-client/rest-client — This is a Ruby HTTP client designed for REST API integration, resource modeling, and automated network communication.…

Projects sharing features with Request Promise

These projects share indexed features with Request Promise. Shared tags can include platform or build tooling; verify the primary use case before treating a result as a replacement.
  • amitshekhariitbhu/fast-android-networkingamitshekhariitbhu avatar

    amitshekhariitbhu/Fast-Android-Networking

    5,906View on GitHub↗

    🚀 A Complete Fast Android Networking Library that also supports HTTP/2 🚀

    Java
    View on GitHub↗5,906
  • bitinn/node-fetchbitinn avatar

    bitinn/node-fetch

    8,861View on GitHub↗

    node-fetch is a lightweight HTTP client library that implements the browser-standard Fetch API for Node.js. It provides a promise-based interface for making asynchronous network requests to retrieve or send data from server-side environments. The project specializes in memory-efficient data handling by utilizing request and response streaming. This allows for the incremental processing of large network payloads through native system streams to prevent memory exhaustion. The library covers a broad range of networking capabilities, including the use of custom HTTP agents for DNS and SSL config

    JavaScript
    View on GitHub↗8,861
  • mzabriskie/axiosmzabriskie avatar

    mzabriskie/axios

    109,096View on GitHub↗

    Axios is a promise-based HTTP client used to make asynchronous network requests in both browser and Node.js environments. It functions as a multi-environment network adapter that abstracts the transport layer to ensure consistent behavior across different runtimes. The project distinguishes itself through a request lifecycle management system that allows for the cancellation of active requests, the setting of timeouts, and the monitoring of upload and download transfer progress. It includes a mechanism for intercepting network traffic, enabling the transformation of outgoing requests and inco

    JavaScript
    View on GitHub↗109,096
  • elbywan/wretchelbywan avatar

    elbywan/wretch

    5,174View on GitHub↗

    Wretch is a chainable HTTP client library and Fetch API wrapper designed to simplify network request configuration, response parsing, and error handling. It functions as a network request manager and middleware framework for managing the end-to-end lifecycle of HTTP calls. The project is distinguished by a fluent interface for request configuration and a modular extension system. It utilizes a programmable response resolver to automate parsing and a plugin-based architecture to add new capabilities to request and response objects. The library covers a broad range of operational capabilities,

    TypeScript
    View on GitHub↗5,174
  • Compare all 30 related projects→