Memasang jembatan NextPDF Cloudflare
Sekilas
Bagian berjudul “Sekilas”Pasang paket dengan Composer. Setelah itu, tambahkan klien Hypertext Transfer Protocol (HTTP) yang mengimplementasikan PHP Standard Recommendation 18 (PSR-18) serta factory yang mengimplementasikan PSR-17. Jembatan ini hanya mendeklarasikan antarmukanya; klien HTTP konkret tidak disertakan.
Persyaratan
Bagian berjudul “Persyaratan”Jembatan ini membaca dependensi berikut dari bagian require pada composer.json:
| Dependensi | Batasan |
|---|---|
| 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 |
Paket ini melakukan autoload NextPDF\Cloudflare\ dari src/Cloudflare/ (PSR-4). Paket ini lolos analisis statis PHPStan Level 10 dan tidak menyertakan baseline penganalisis.
Memasang paket
Bagian berjudul “Memasang paket”composer require nextpdf/cloudflareMenambahkan klien HTTP dan factory
Bagian berjudul “Menambahkan klien HTTP dan factory”Konstruktor jembatan ini memerlukan ClientInterface PSR-18, RequestFactoryInterface PSR-17, dan StreamFactoryInterface PSR-17. Jalur transport tersemat juga menggunakan ResponseFactoryInterface PSR-17 jika Anda menyediakannya. Anda dapat menggunakan implementasi apa pun yang patuh. README mencantumkan Guzzle sebagai salah satu contoh:
composer require guzzlehttp/guzzleGuzzle 7 menyediakan klien PSR-18 serta keempat antarmuka factory PSR-17. Symfony HttpClient, Buzz, dan tumpukan lain yang patuh juga dapat digunakan. Paket ini dirancang netral terhadap vendor. Pengujian tests/Unit/Architecture/PsrConformanceTest.php menegaskan bahwa paket ini hanya bergantung pada kontrak PSR, bukan pada klien konkret tertentu.
Opsional: fallback Chrome lokal
Bagian berjudul “Opsional: fallback Chrome lokal”Jika Worker tidak dapat dijangkau dan fallback diaktifkan, jembatan ini dapat mendelegasikan proses render ke renderer lokal. Anda menyediakan renderer tersebut melalui NextPDF\Cloudflare\Contract\LocalRendererFactoryInterface. Blok suggest pada composer.json mencantumkan implementasi resmi:
composer require nextpdf/artisanMemasang nextpdf/artisan saja tidak cukup. Anda juga harus meneruskan LocalRendererFactoryInterface ke konstruktor renderer. Jika Artisan terpasang tetapi tidak ada factory yang dihubungkan, jembatan ini mendeteksi kondisi tersebut dan memunculkan CloudflareNotAvailableException. Pesan eksepsinya menyatakan hal itu secara tepat. Lihat /integrations/cloudflare/production-usage/ untuk cara menyambungkannya.
Memverifikasi pemasangan
Bagian berjudul “Memverifikasi pemasangan”<?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() mengembalikan true ketika workerUrl dan apiToken sama-sama tidak kosong. Metode ini tidak menghubungi jaringan. Metode ini hanya memeriksa kelengkapan konfigurasi, sehingga Anda dapat menggunakannya sebagai smoke test saat deploy.
Lihat juga
Bagian berjudul “Lihat juga”- /integrations/cloudflare/configuration/ — semua opsi konfigurasi.
- /integrations/cloudflare/quickstart/ — jalankan render pertama Anda.
- /integrations/cloudflare/boot-and-discovery/ — sambungkan jembatan ini ke kontainer framework.