$data = [
'kind' => 'blogger#post',
'blog' => [
'id' => $bloggerId,
],
'title' => $title,
'content' => $content,
// Add other parameters as needed
];
$client = new Client();
$url = "https://www.googleapis.com/blogger/v3/blogs/{$bloggerId}/posts/";
try {
$response = $client->get($url);
$data = json_decode($response->getBody(), true);
return response()->json(['success' => true, 'data' => $data]);
} catch (\Exception $e) {
return response()->json(['success' => false, 'error' => $e->getMessage()]);
}
我尝试在博客中发帖 从 Laravel 控制器 但未能通过验证从 Laravel 控制器通过 REST API 发布帖子博客
您遇到的问题可能是由于缺少身份验证造成的。 Blogger API 需要 OAuth 2.0 进行身份验证。您必须在授权 HTTP 标头中传递访问令牌,格式为
Authorization: Bearer your-access-token
。
$accessToken = 'your-access-token'; // Replace with your actual access token
$data = [
'kind' => 'blogger#post',
'blog' => [
'id' => $bloggerId,
],
'title' => $title,
'content' => $content,
// Add other parameters as needed
];
$client = new Client();
$url = "https://www.googleapis.com/blogger/v3/blogs/{$bloggerId}/posts/";
try {
$response = $client->post($url, [
'headers' => [
'Authorization' => 'Bearer ' . $accessToken,
'Content-Type' => 'application/json',
],
'json' => $data
]);
$data = json_decode($response->getBody(), true);
return response()->json(['success' => true, 'data' => $data]);
} catch (\Exception $e) {
return response()->json(['success' => false, 'error' => $e->getMessage()]);
}
此代码将使用身份验证标头向 Blogger API 发送 POST 请求。