Skip to content

nathan242/php-icap-client

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

php-icap-client

PHP ICAP client.

Allows you to send requests to Internet Content Adaptation Protocol (ICAP) servers from PHP.

Usage

Instantiate the class with the ICAP server address and port:

$icap = new IcapClient('127.0.0.1', 13440);

Send an OPTIONS request to the "example" service:

$icap->options('example');

Send a REQMOD and RESPMOD request to the "example" service:

$icap->reqmod(
    'example',
    [
        'req-hdr' => "POST /test HTTP/1.1\r\nHost: 127.0.0.1\r\n\r\n",
        'req-body' => 'This is another test.'
    ]
);

$icap->respmod(
    'example',
    [
        'res-hdr' => "HTTP/1.1 200 OK\r\nServer: Test/0.0.1\r\nContent-Type: text/html\r\n\r\n",
        'res-body' => 'This is a test.'
    ]
);

Successful requests will return an array describing the response:

Array
(
    [protocol] => Array
        (
            [icap] => ICAP/1.0
            [code] => 200
            [message] => OK
        )

    [headers] => Array
        (
            [Date] => Wed, 03 Jul 2019 22:11:33 GMT
            [ISTag] => X7K07GDZQW702ZVLSG6WWO0EPE2CTOMR
            [Encapsulated] => res-hdr=0, res-body=64
            [Server] => ICAP/1.3 Python/2.7.3
        )

    [body] => Array
        (
            [res-hdr] => HTTP/1.1 200 OK
content-type: text/html
server: Test/0.0.1
            [res-body] => This is a test.
        )

    [rawBody] => HTTP/1.1 200 OK
content-type: text/html
server: Test/0.0.1

f
This is a test.
0


)

About

PHP client library to use ICAP servers (RFC 3507)

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages