Webhooks - 인증 유형 API 키 - 비밀 이름 및 비밀 값 - PHP
P粉545910687
2023-08-30 18:46:16
<p>API 키(비밀 이름 및 비밀 값)를 사용하여 웹훅을 인증하려고 합니다.所以我所了两个文件:</p>
<p>webhook.php:</p>
<pre class="brush:php;toolbar:false;"><?php
include('webhook-api-key.php');
// 웹훅 POST 요청에서 요청 본문을 검색합니다.
if ($http_status_code === 200){
$request_body = file_get_contents('php://input');
// 요청 본문을 JSON에서 PHP 객체로 변환합니다.
$request_data = json_decode($request_body);
// 요청 데이터에서 연락처 속성을 추출합니다.
$contact_properties = $request_data->속성;
// 이메일 속성 값 추출
$email = $contact_properties->이메일->값;
// 이름 속성 값을 추출합니다.
$first_name = $contact_properties->이름->값;
// 성 속성값 추출
$last_name = $contact_properties->성->값;
// 연락처 데이터를 데이터베이스에 추가하거나 이메일 알림을 보내는 등의 작업을 수행합니다.
// 예를 들어:
$contact_data = 배열(
'이메일' => $이메일,
'이름' => $first_name,
'성' => $last_name
);
// 연락처 데이터를 데이터베이스에 추가하거나 이메일 알림 등을 보냅니다.
// Webhook이 성공적으로 수신 및 처리되었음을 나타내는 HTTP 응답을 HubSpot에 보냅니다.
http_response_code(200);
}
?></pre>
<p> 와 webhook-api-key.php:</p>
<pre class="brush:php;toolbar:false;"><?php
$endpoint_url = 'https:/.../hubspot/webhook.php';
// API 키 비밀 이름과 비밀 값을 설정합니다.
$api_key_secret_name = '단어';
$api_key_secret_value = 'anther_word';
// HTTP POST 요청 헤더 설정
$헤더 = 배열(
'콘텐츠 유형: 애플리케이션/json',
'권한: 전달자'.$api_key_secret_value
);
// HTTP POST 요청 본문을 설정합니다.
$바디 = 배열(
'api_key' => $api_key_secret_value
);
// 웹훅 엔드포인트 URL로 HTTP POST 요청을 보냅니다.
$ch = 컬_init($endpoint_url);
컬_setopt($ch, CURLOPT_RETURNTRANSFER, true);
컬_setopt($ch, CURLOPT_POST, true);
컬_setopt($ch, CURLOPT_HTTPHEADER, $headers);
컬_setopt($ch, CURLOPT_POSTFIELDS, json_encode($body));
$응답 = 컬_exec($ch);
// 오류 확인
if(curl_errno($ch)) {
$error_message = 컬_오류($ch);
echo '오류: '.$error_message;
}
// HTTP 응답 상태 코드를 가져옵니다.
$http_status_code = 컬_getinfo($ch, CURLINFO_HTTP_CODE);
// HTTP POST 요청을 닫습니다.
컬_닫기($ch);
// 웹훅 응답 처리
if ($http_status_code === 200) {
echo '웹훅이 성공적으로 인증되었습니다.';
} 또 다른 {
echo 'HTTP 상태 코드로 인해 웹훅 인증이 실패했습니다: ' . $http_status_code;
}
?></pre>
<p>Hubspot 配置中,网址为“https:/.../hubspot/webhook.php”에서.</p>
<p>이거 괜찮나요? 테스트하려고 했을 때 서버가 종료되었고 인터넷에서 이런 종류의 인증을 사용하는 예를 찾을 수 없기 때문에 이렇게 묻습니다. </p>
<p>감사합니다! </p>
실제로는 매우 간단합니다. 인터넷에는 예제가 없으며 문서가 열악하여 API 키보다 Hubspot 서명에 대해 더 많이 설명합니다. 마침내 그것이 어떻게 작동하는지 알아냈고 여기에 작동 코드가 있습니다:
으아악