Bạn cần sử dụng thư viện cURL để gửi yêu cầu này.
<?php
$blogID = '8070105920543249955';
$authToken = 'OAuth 2.0 token here';
$postData = array(
'kind' => 'blogger#post',
'blog' => array('id' => $blogID),
'title' => 'A new post',
'content' => 'With <b>exciting</b> content...'
);
$ch = curl_init('https://www.googleapis.com/blogger/v3/blogs/'.$blogID.'/posts/');
curl_setopt_array($ch, array(
CURLOPT_POST => TRUE,
CURLOPT_RETURNTRANSFER => TRUE,
CURLOPT_HTTPHEADER => array(
'Authorization: '.$authToken,
'Content-Type: application/json'
),
CURLOPT_POSTFIELDS => json_encode($postData)
));
$response = curl_exec($ch);
if($response === FALSE){
die(curl_error($ch));
}
$responseData = json_decode($response, TRUE);
echo $responseData['published'];
Nếu vì lý do nào đó, bạn không thể / không muốn sử dụng cURL, bạn có thể làm như sau:
<?php
$blogID = '8070105920543249955';
$authToken = 'OAuth 2.0 token here';
$postData = array(
'kind' => 'blogger#post',
'blog' => array('id' => $blogID),
'title' => 'A new post',
'content' => 'With <b>exciting</b> content...'
);
$context = stream_context_create(array(
'http' => array(
'method' => 'POST',
'header' => "Authorization: {$authToken}\r\n".
"Content-Type: application/json\r\n",
'content' => json_encode($postData)
)
));
$response = file_get_contents('https://www.googleapis.com/blogger/v3/blogs/'.$blogID.'/posts/', FALSE, $context);
if($response === FALSE){
die('Error');
}
$responseData = json_decode($response, TRUE);
echo $responseData['published'];