Bitpay\Client\Client::addSignatureHeader PHP Method

addSignatureHeader() protected method

protected addSignatureHeader ( Bitpay\Client\RequestInterface $request )
$request Bitpay\Client\RequestInterface
    protected function addSignatureHeader(RequestInterface $request)
    {
        if (null === $this->privateKey) {
            throw new \Exception('Please set your Private Key');
        }
        if (true == property_exists($this->network, 'isPortRequiredInUrl')) {
            if ($this->network->isPortRequiredInUrl === true) {
                $url = $request->getUriWithPort();
            } else {
                $url = $request->getUri();
            }
        } else {
            $url = $request->getUri();
        }
        $message = sprintf('%s%s', $url, $request->getBody());
        $signature = $this->privateKey->sign($message);
        $request->setHeader('x-signature', $signature);
    }