Socket
Socket
Sign inDemoInstall

request

Package Overview
Dependencies
0
Maintainers
0
Versions
126
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    request

Simplified HTTP request method.


Version published
Weekly downloads
13M
increased by0.15%
Maintainers
0
Created
Weekly downloads
 

Package description

What is request?

The 'request' npm package is a simple, yet powerful HTTP client that supports multiple features such as making HTTP calls, handling responses, streaming data, and more. It is designed to be the simplest way possible to make http calls and supports HTTPS and follows redirects by default.

What are request's main functionalities?

Simple HTTP GET requests

This code performs a simple HTTP GET request to Google's homepage and logs the error, response status code, and the response body.

const request = require('request');
request('http://www.google.com', function (error, response, body) {
  console.log('error:', error);
  console.log('statusCode:', response && response.statusCode);
  console.log('body:', body);
});

Streaming data

This code demonstrates how to stream data from an HTTP request directly to a file, which can be useful for downloading files or handling large amounts of data.

const request = require('request');
const fs = require('fs');
const stream = fs.createWriteStream('file.txt');
request('http://www.google.com').pipe(stream);

Custom HTTP headers

This code shows how to send a custom HTTP header (in this case, the User-Agent header) with a request. This is often required when using certain APIs, like GitHub's.

const request = require('request');
const options = {
  url: 'https://api.github.com/repos/request/request',
  headers: {
    'User-Agent': 'request'
  }
};
function callback(error, response, body) {
  if (!error && response.statusCode == 200) {
    const info = JSON.parse(body);
    console.log(info);
  }
}
request(options, callback);

Handling POST requests

This code snippet demonstrates how to send a POST request with form data, including how to upload a file as part of that form data.

const request = require('request');
const options = {
  method: 'POST',
  url: 'http://service.com/upload',
  headers: {
    'Content-Type': 'multipart/form-data'
  },
  formData: {
    key: 'value',
    file: fs.createReadStream('file.txt')
  }
};
request(options, function (error, response, body) {
  if (error) throw new Error(error);
  console.log(body);
});

Other packages similar to request

Readme

Source

Request -- Simplified HTTP request method

Install

  npm install request

Super simple to use

Request is designed to be the simplest way possible to make http calls. It support HTTPS and follows redirects by default.

request(options, callback)

The first argument is an options object. The only required option is uri, all others are optional.

  • 'uri' - fully qualified uri or a parsed url object from url.parse()
  • 'method' - http method, defaults to GET
  • 'headers' - http headers, defaults to {}
  • 'body' - entity body for POST and PUT requests
  • 'client' - existing http client object (when undefined a new one will be created and assigned to this property so you can keep around a reference to it if you would like use keep-alive on later request)
  • 'followRedirect - follow HTTP 3xx responses as redirects. defaults to true.
  • 'requestBodyStream - Stream to read request body chunks from.
  • 'responseBodyStream - Stream to write body chunks to. When set this option will be passed as the last argument to the callback instead of the entire body.

The callback argument gets 3 arguments. The first is an error when applicable (usually from the http.Client option not the http.ClientRequest object). The second in an http.ClientResponse object. The third is the response body buffer.

Example:

  var request = require('request');
  request({uri:'http://www.google.com'}, function (error, response, body) {
    if (!error && response.statusCode == 200) {
      sys.puts(body) // Print the google web page.
    }
  })

It's also worth noting that the options argument will mutate. When following a redirect the uri values will change. After setting up a client options it will set the client property.

FAQs

Last updated on 22 Jan 2011

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.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc