Instale a ponte do NextPDF para Cloudflare
Visão geral
Seção intitulada “Visão geral”Instale o pacote com o Composer. Depois, adicione um cliente Hypertext Transfer Protocol (HTTP) que implemente a PHP Standard Recommendation 18 (PSR-18) e factories que implementem a PSR-17. A ponte declara as interfaces; não inclui um cliente HTTP concreto.
Requisitos
Seção intitulada “Requisitos”A ponte lê estas dependências da seção require do composer.json:
| Dependência | Restrição |
|---|---|
| PHP | >=8.4 <9.0 |
nextpdf/core | ^3.0 |
psr/http-client (PSR-18) | ^1.0 |
psr/http-factory (PSR-17) | ^1.1 |
psr/log (PSR-3) | ^3.0 |
O pacote faz o autoload de NextPDF\Cloudflare\ a partir de src/Cloudflare/ (PSR-4). Ele é aprovado na análise estática no PHPStan Level 10 e não inclui um baseline de analisador.
Instale o pacote
Seção intitulada “Instale o pacote”composer require nextpdf/cloudflareAdicione um cliente HTTP e factories
Seção intitulada “Adicione um cliente HTTP e factories”O construtor da ponte exige um ClientInterface PSR-18, um RequestFactoryInterface PSR-17 e um StreamFactoryInterface PSR-17. O caminho de transporte fixado também usa um ResponseFactoryInterface PSR-17 quando você fornece um. Você pode usar qualquer implementação compatível. O README cita o Guzzle como exemplo:
composer require guzzlehttp/guzzleO Guzzle 7 fornece o cliente PSR-18 e todas as quatro interfaces de factory PSR-17. Symfony HttpClient, Buzz e outras stacks compatíveis também funcionam. O pacote é, por design, neutro em relação a fornecedores. O teste tests/Unit/Architecture/PsrConformanceTest.php verifica se o pacote depende apenas dos contratos PSR, e não de qualquer cliente concreto.
Opcional: fallback local com o Chrome
Seção intitulada “Opcional: fallback local com o Chrome”Quando o Worker não está acessível e o fallback está habilitado, a ponte pode delegar a renderização a um renderizador local. Você fornece esse renderizador por meio de NextPDF\Cloudflare\Contract\LocalRendererFactoryInterface. O bloco suggest no composer.json cita a implementação oficial:
composer require nextpdf/artisanInstalar o nextpdf/artisan não é suficiente por si só. Você também precisa passar um LocalRendererFactoryInterface ao construtor do renderizador. Se o Artisan estiver instalado, mas nenhuma factory estiver conectada, a ponte detecta esse estado e lança uma CloudflareNotAvailableException. A mensagem da exceção informa exatamente isso. Consulte /integrations/cloudflare/production-usage/ para ver como fazer a conexão.
Verifique a instalação
Seção intitulada “Verifique a instalação”<?php
declare(strict_types=1);
require __DIR__ . '/vendor/autoload.php';
use NextPDF\Cloudflare\CloudflareRendererConfig;
$config = new CloudflareRendererConfig( workerUrl: 'https://pdf-renderer.example.workers.dev/render', apiToken: 'placeholder',);
echo $config->isValid() ? "ready\n" : "incomplete\n";isValid() retorna true quando workerUrl e apiToken não estão vazios. O método não acessa a rede. Ele apenas verifica se a configuração está completa, então você pode usá-lo como um smoke test no momento do deploy.
Veja também
Seção intitulada “Veja também”- /integrations/cloudflare/configuration/ — todas as opções de configuração.
- /integrations/cloudflare/quickstart/ — faça a primeira renderização.
- /integrations/cloudflare/boot-and-discovery/ — conecte a ponte a um container de framework.