lia-tec/http

Maintainers

Details

github.com/lia-tec/http

Source

Issues

Installs: 27

Dependents: 0

Suggesters: 0

Security: 0

Stars: 0

Watchers: 1

Forks: 0

pkg:composer/lia-tec/http

1.0.6 2022-10-18 18:22 UTC

This package is auto-updated.

Last update: 2025-11-19 00:59:15 UTC


README

Usage

Create credential for Basic Auth

Extends from LiaTec\Http\Credential and create custom class credential

use LiaTec\Http\Credential;

class MyCustomCredential extends Credential
{
    /**
    * Init any value
    *
    * @return void
    */
    public function boot()
    {
        
    }
    
    /**
    * Modifies request headers if you need
    *
    * @return void
    */
    public function request()
    {
        // $this->header('Test', 'Testing');        
    }

    /**
     * Prepare payload for Basic auth token
     * username and password values are required
     */
    public function getTokenRequestParameters(): array
    {
        return [
            'username' => $this->username,
            'password' => $this->password,
        ];
    }
}

Get basic client from factory

$client = Http::basic(
    new MyCustomCredential(['username' => $this->username, 'password' => $this->password])
)->protocol('https')->baseUrl("domain.com");

Make calls

$client->get('resourceName'); // calls: GET https://domain.com/resourceName
$client->post('resourceName',[ 'payload'=>'value', 'more'=> true ]);
$client->put('resourceName',[ 'payload'=>'value', 'more'=> true ]);
$client->patch('resourceName',[ 'payload'=>'value', 'more'=> true ]);

Every call gets the Authorization: Basic <token> header, where <token> is made with base64_encode("{username}:{password}")