Skip to content

wreckvsrequests

BSD-3-Clause 4 7 378
300.2 thousand (month) Aug 06 2011 18.1.0(2025-07-24 23:01:15 ago)
3,577 8 119 ISC
Oct 06 2013 23.6 thousand (month) v2.0.17(2025-12-12 17:47:19 ago)

Wreck is an HTTP client library for Node.js. It provides a simple, consistent API for making HTTP requests, including support for both the client and server side of an HTTP transaction.

Wreck is a very minimal but stable as it's part of Hapi web framework project. For web scraping, it doesn't offer required features like proxy configuration or http2 support so it's not recommended.

PHP library "Requests" is an HTTP library written in PHP, for making HTTP requests. It's heavily inspired by a popular Python library called Requests and aims for the same goals of simplifying HTTP client complexities.

It abstracts the complexities of making requests behind a simple API so that you can focus on interacting with services and consuming data in your application.

Requests allows you to send HTTP/1.1 HEAD, GET, POST, PUT, DELETE, and PATCH HTTP requests. You can add headers, form data, multipart files, and parameters with basic arrays, and access the response data in the same way.

Requests uses cURL and fsockopen, depending on what your system has available, but abstracts all the nasty stuff out of your way, providing a consistent API.

Features:

  • International Domains and URLs
  • Browser-style SSL Verification
  • Basic/Digest Authentication
  • Automatic Decompression
  • Connection Timeouts

Example Use


```javascript const Wreck = require('wreck'); // get request Wreck.get('http://example.com', (err, res, payload) => { if (err) { throw err; } console.log(payload.toString()); }); // post request const options = { headers: { 'content-type': 'application/json' }, payload: JSON.stringify({ name: 'John Doe' }) }; Wreck.post('http://example.com', options, (err, res, payload) => { if (err) { throw err; } console.log(payload.toString()); }); ```
```php require 'vendor/autoload.php'; use Requests; // make GET request $response = Requests::get('https://httpbin.org/get'); echo $response->status_code; // make POST request $data = array('name' => 'Bob', 'age' => 35); $options = array('auth' => array('user', 'pass')); $response = Requests::post('https://httpbin.org/post', array(), $data, $options); echo $response->status_code; ```

Alternatives / Similar


Was this page helpful?