Skip to content

A simple PHP class for making HTTP requests using cURL

License

Notifications You must be signed in to change notification settings

ReactMVC/HTTPMonster

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

HTTPMonster

HTTPMonster is a PHP class that provides a simple and easy-to-use interface for making HTTP requests using cURL. It allows you to easily set HTTP headers, request body, request method, and other options.

Installation

You can install HTTPMonster using Composer:

composer require darkphp/monster

Usage

To use HTTPMonster, you first need to create an instance of the class:

require_once 'vendor/autoload.php';

use DarkPHP\HTTPMonster;

$http = new HTTPMonster();

Setting Request Options

HTTPMonster provides several methods for setting request options:

$http->Url('https://example.com');
$http->Method('POST');
$http->Headers([
    'Content-Type: application/json',
    'Authorization: Bearer XXXXXXXXXXXXXXXXXXXXXXXXX'
]);
$http->Body('{"foo": "bar"}');
$http->Timeout(30);
echo $http->getBody();

Sending the Request

To send the request, simply call the Send() method:

$response = $http->Send();

The Send() method returns the response from the server as a string.

Getting the HTTP Status Code

You can get the HTTP status code of the response using the getStatus() method:

$status = $http->getStatus();

Add 1 Option

HTTPMonster add cURL options for the request. You can modify these defaults by calling the Option() method:

$http->Option(CURLOPT_RETURNTRANSFER, true);

Chaining Methods

HTTPMonster allows you to chain methods to make the code more readable:

$response = $http->Url('https://example.com')
    ->Method('POST')
    ->Headers([
        'Content-Type: application/json',
        'Authorization: Bearer XXXXXXXXXXXXXXXXXXXXXXXXX'
    ])
    ->Body('{"foo": "bar"}')
    ->Timeout(30)
    ->Send();

Error Handling

HTTPMonster throws an exception if cURL encounters an error while executing the request. You should always catch these exceptions to handle errors properly:

try {
    $response = $http->Send();
} catch (Exception $e) {
    echo 'Error: ' . $e->getMessage();
}

License

HTTPMonster is licensed under the MIT License. See LICENSE for more information.

Developer

HTTPMonster is developed by Hossein Pira.

If you have any questions, comments, or feedback, please feel free to contact John via email or Telegram.

About

A simple PHP class for making HTTP requests using cURL

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages