Get support for joelwurtz/socket-adapter-temp

If you're new to LTH, please see our FAQ for more information on what it is we do.

Support Options

Unfortunately, there are currently no active helpers for this repository on the platform. Until they become available, we reccomend the following actions:

View Open Issues

Take a look to see if anyone else has experienced the same issue as you and if they managed to solve it.

Open an Issue

Make sure to read any relevant guidelines for opening issues on this repo before posting a new issue.

Sponsor directly

Check out the page and see if there are any options to sponsor this project or it's developers directly.

joelwurtz/socket-adapter-temp

Socket Adapter for PHP HTTP

Latest Version Software License Build Status Code Coverage Quality Score Total Downloads

The socket adapter use the stream extension from PHP, which is integrated into the core.

Install

Via Composer

$ composer require php-http/socket-adapter

Features

  • TCP Socket Domain (tcp://hostname:port)
  • UNIX Socket Domain (unix:///path/to/socket.sock)
  • TLS / SSL Encyrption
  • Client Certificate (only for php > 5.6)

Usage

The SocketHttpClient class need a message factory in order to work:

$options = [];
$client = new new Http\Socket\SocketHttpClient($messageFactory, $options);

The $options array allow to configure the socket client.

Options

Here is the list of available options:

  • remote_socket: Specify the remote socket where the library should send the request to

Can be a tcp remote : tcp://hostname:port Can be a unix remote : unix://hostname:port

Do not use a tls / ssl scheme, this is handle by the ssl option. If not set, the client will try to determine it from the request uri or host header.

  • timeout : Timeout for writing request or reading response on the remote
  • ssl : Activate or deactivate the ssl / tls encryption
  • stream_context_options : Custom options for the context of the stream, same as PHP stream context options

As an example someone may want to pass a client certificate when using the ssl, a valid configuration for this use case would be:

$options = [
   'stream_context_options' => [
       'ssl' => [
           'local_cert' => '/path/to/my/client-certificate.pem'
       ]
   ]
]
$client = new Http\Socket\SocketHttpClient($messageFactory, $options);
  • stream_context_params : Custom parameters for the context of the stream, same as PHP stream context parameters
  • write_buffer_size : When sending the request we need to bufferize the body, this option specify the size of this buffer, default is 8192, if you are sending big file with your client it may be interesting to have a bigger value in order to increase performance.

Testing

First launch the http server:

$ ./vendor/bin/http_test_server > /dev/null 2>&1 &

Then the test suite:

$ composer test

Contributing

Please see CONTRIBUTING and CONDUCT for details.

Security

If you discover any security related issues, please contact us at security@php-http.org.

License

The MIT License (MIT). Please see License File for more information.

Our Mission

We want to make open source more sustainable. The entire platform was born from this and everything we do is in aid of this.

Interesting Articles

Thank you for checking out LiveTechHelper |
2025 © lth-dev incorporated

p-e622a1a2