soltancode/send-request

Simple package for Laravel that makes it easy to send HTTP requests and integrate with web APIs.

Fund package maintenance!
Ko Fi

v2.0.0 2022-11-24 11:12 UTC

This package is auto-updated.

Last update: 2024-10-24 15:37:07 UTC


README

Simple package for Laravel Framework that makes it easy to send HTTP requests and integrate with web APIs.

Packagist Version Packagist Stars Packagist Downloads Packagist PHP Version Support Packagist License

Installation

composer require soltancode/send-request

Usage

If you use it as class (facade), import this:

use Soltancode\SendRequest\Facades\SendRequest;

GET Request:

// $baseUrl = "https://dummyjson.com";
// $service = "/products/1";

# Using as class:
SendRequest::get($baseUrl, $service);

# Using as helper:
sendRequest()->get($baseUrl, $service)

GET Request with params:

// $baseUrl = "https://dummyjson.com";
// $service = "/products/1";
// $params  = [
//     'q' => 'phone'
// ];

# Using as class:
SendRequest::get($baseUrl, $service, $params); # https://dummyjson.com/products/search?q=phone

# Using as helper:
sendRequest()->get($baseUrl, $service, $params); # https://dummyjson.com/products/search?q=phone

POST Request with params:

// $baseUrl = "https://api.example.com";
// $service = "/login";

# Using as class:
SendRequest::post($baseUrl, $service, [
    'username' => 'myusername',
    'password' => 'mypassword'
]);

# Using as helper:
sendRequest()->post($baseUrl, $service, [
    'username' => 'myusername',
    'password' => 'mypassword'
]);

PUT Request with params:

// $baseUrl = "https://api.example.com";
// $service = "/users/1";

# Using as class:
SendRequest::put($baseUrl, $service, [
    'first_name' => 'John',
    'last_name' => 'Doe'
]);

# Using as helper:
sendRequest()->put($baseUrl, $service, [
    'first_name' => 'John',
    'last_name' => 'Doe'
]);

PATCH Request with params:

// $baseUrl = "https://api.example.com";
// $service = "/users/1";

# Using as class:
SendRequest::patch($baseUrl, $service, [
    'first_name' => 'John'
]);

# Using as helper:
sendRequest()->patch($baseUrl, $service, [
    'first_name' => 'John'
]);

DELETE Request with params:

// $baseUrl = "https://api.example.com";
// $service = "/users";

# Using as class:
SendRequest::delete($baseUrl, $service, [
    'id' => 'John'
]);

# Using as helper:
sendRequest()->delete($baseUrl, $service, [
    'id' => 'John'
]);

Timeout

The timeout method may be used to specify the maximum number of seconds to wait for a response:

$response = sendRequest()->timeout(3)->post(/* ... */);

Other Packages

ReturnResponse - It's a return helper for showing standard json responses.

Contributing

Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.

Please make sure to update tests as appropriate.

License

MIT