導覽

PHP

在 PHP 中使用簽署網址

用 PHP SDK 產生簽署網址。有人開啟這個網址時,它會渲染範本圖片。

generateImageSignedUrl 會建立一個連結,在有人開啟時渲染圖片。它不會發出任何網路請求:SDK 會在你的伺服器上,用你的 API 金鑰為網址簽署。

請求

#templateIdstringrequired

範本 ID,例如 tpl_xxx。

#modificationsarray

要放進範本圖層的值。它們會放在網址中傳送,所以請保持簡短。每種圖層接受哪些欄位,請見 Modifications。

#formatstringdefault: png

圖片格式:png、jpeg 或 webp。傳入其他值時,這個方法會擲出 InvalidArgumentException。

#nocachebooldefault: false

略過快取。每個請求都會渲染一張新圖片,並計入你的配額。

$url = $client->generateImageSignedUrl('tpl_xxx', [
    'modifications' => [
        ['name' => 'headline', 'text' => 'Hello, Ada'],
    ],
    'format' => 'jpeg',
]);

回應

這個方法會回傳字串:

https://api.bannerify.co/v1/templates/signedurl?apiKeyHashed=2f5a...&format=jpeg&modifications=%5B...%5D&templateId=tpl_xxx&sign=ce2d...

apiKeyHashed 告訴 Bannerify 是哪個金鑰簽署了這個網址。sign 是以你的 API 金鑰為金鑰,對其他參數計算的 HMAC-SHA256。任何人都無法在不破壞簽章的情況下,變更簽署網址中的範本或 modifications,所以你可以把這個網址放進網頁、電子郵件或 meta 標籤中。

echo '<img src="' . htmlspecialchars($url) . '" alt="Welcome banner">';

Bannerify 最多會快取渲染好的圖片 7 天。快取、配額和上限的說明,請見簽署網址。