Webhooks - 驗證類型 Api 金鑰 - 秘密名稱和秘密值 - PHP 中
P粉545910687
P粉545910687 2023-08-30 18:46:16
0
1
543
<p>我正在嘗試使用 api 金鑰(秘密名稱和秘密值)對 webhook 進行身份驗證。所以我製作了兩份文件:</p> <p>webhook.php:</p>
properties;

        // 提取email屬性值
        $email = $contact_properties->email->value;

        // 提取名字屬性值
        $first_name = $contact_properties->名字->值;

        // 提取姓氏屬性值
        $last_name = $contact_properties->姓氏->值;

        // 對聯絡人資料執行某些操作,例如將其新增至資料庫或傳送電子郵件通知
        // 例如:
        $contact_data = 數組(
            '電子郵件' => $電子郵件,
            '名字' => $名字,
            '姓氏' => $姓氏
        );
        // 將聯絡人資料新增至資料庫或傳送電子郵件通知等

        // 向 HubSpot 發送 HTTP 回應,表示 Webhook 已成功接收並處理
        http_response_code(200);
}
?></pre>
<p>和 webhook-api-key.php:</p>
; $api_key_secret_value
);

// 將 HTTP POST 請求傳送到 webhook 端點 URL
$ch =curl_init($endpoint_url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($body));
$回應=curl_exec($ch);

// 檢查是否有錯誤
如果(curl_errno($ ch)){
    $error_message=curl_error($ch);
    echo '錯誤:'.$error_message;
}

// 取得HTTP回應狀態碼
$http_status_code = curl_getinfo($ch, CURLINFO_HTTP_CODE);

// 關閉HTTP POST請求
捲曲_關閉($ch);

// 處理 webhook 回應
如果($http_status_code === 200){
    echo 'Webhook 已成功驗證。';
} 別的 {
    echo 'Webhook 驗證失敗,HTTP 狀態碼:' 。 $http_status_code;
}
?></pre>
<p>在 Hubspot 設定中,網址為「https:/.../hubspot/webhook.php」。</p>
<p>這樣可以嗎?我這麼問是因為當我嘗試測試它時它殺死了我的伺服器,並且我在互聯網上找不到使用這種身份驗證的範例。 </p>
<p>謝謝! </p>            
P粉545910687
P粉545910687

全部回覆(1)
P粉413307845

所以其實很簡單。網路上沒有範例,文件也很差,它更多地解釋了 Hubspot 簽名而不是 API 金鑰。 我最終明白了它是如何工作的,這是工作代碼:

$expectedSecretName = 'word'; // Replace with your expected secret name
$expectedSecretValue = 'another_word'; // Replace with your expected secret value

$requestBody = file_get_contents('php://input');
$data = json_decode($requestBody);

    if($_SERVER['HTTP_WORD'] == $expectedSecretValue){
//do something with values
$email = $data->email;
$firstname= $data->firstname;
$lastname= $data->lastname;
}
else{
//not from Hubspot
}
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!