테스트 사이트 - 개발 중인 베타 버전입니다

작성한 글을 구글 blogger에 글 보내기(등록하기) 질문 드립니다, 채택완료

써맨 7년 전 조회 3,419

그누보드에서 작성한 글을 구글 블로거(blogger)로 SNS공유하기 처럼 보내기 하려고 합니다.

Blogger API v3를 이용하여 작업을 하려고 하는데 쉽지가 않네요.

 

API Key 만들어 

https://developers.google.com/apis-explorer" target="_blank">https://developers.google.com/apis-explorer 에서 온라인으로 테스트를 하면 글 등록이 잘 되는데

php로 만든 소스를 이용하면 전혀 글 등록이 되지 않는군요.

 

사용한 예제 소스는 

http://gayanonline.blogspot.kr/2013/03/google-api-v3-with-php-using-blogger.html" target="_blank">http://gayanonline.blogspot.kr/2013/03/google-api-v3-with-php-using-blogger.html

 

</p>

<p><?php

session_start();

require_once dirname(__FILE__).'/GoogleClientApi/src/Google_Client.php';

require_once dirname(__FILE__).'/GoogleClientApi/src/contrib/Google_BloggerService.php';</p>

<p>$scriptUri = "<a href="http://" target="_blank">http://</a>".$_SERVER["HTTP_HOST"].$_SERVER['PHP_SELF'];</p>

<p>$client = new Google_Client();

$client->setAccessType('online'); // default: offline

$client->setApplicationName('giaws'); //name of the application

$client->setClientId('345345345645.apps.googleusercontent.com'); //insert your client id

$client->setClientSecret('JHJUGHJH6556vhjVHJKds'); //insert your client secret

$client->setRedirectUri($scriptUri); //redirects to same url

$client->setDeveloperKey('jhvjhhj6fvdfvfdv763248732QHGHJBHJ'); // API key (at bottom of page)

$client->setScopes(array('<a href="<a href="https://www.googleapis.com/auth/blogger" target="_blank" rel="noopener noreferrer">https://www.googleapis.com/auth/blogger</a>" target="_blank"><a href="https://www.googleapis.com/auth/blogger" target="_blank" rel="noopener noreferrer">https://www.googleapis.com/auth/blogger</a></a>')); //since we are going to use blogger services</p>

<p>$blogger = new Google_BloggerService($client);</p>

<p>if (isset($_GET['logout'])) { // logout: destroy token

    unset($_SESSION['token']);

 die('Logged out.');

}</p>

<p>if (isset($_GET['code'])) { // we received the positive auth callback, get the token and store it in session

    $client->authenticate();

    $_SESSION['token'] = $client->getAccessToken();

}</p>

<p>if (isset($_SESSION['token'])) { // extract token from session and configure client

    $token = $_SESSION['token'];

    $client->setAccessToken($token);

}</p>

<p>if (!$client->getAccessToken()) { // auth call to google

    $authUrl = $client->createAuthUrl();

    header("Location: ".$authUrl);

    die;

}

//you can get the data about the blog by getByUrl

$data = $blogger->blogs->getByUrl(array('url'=>'<a href="<a href="http://puwaruwa.blogspot.com/" target="_blank" rel="noopener noreferrer">http://puwaruwa.blogspot.com/</a>" target="_blank"><a href="http://puwaruwa.blogspot.com/" target="_blank" rel="noopener noreferrer">http://puwaruwa.blogspot.com/</a></a>'));</p>

<p>//creates a post object

$mypost = new Google_Post();

$mypost->setTitle('this is a test 1 title');

$mypost->setContent('this is a test 1 content');</p>

<p>$data = $blogger->posts->insert('546547654776577', $mypost); //post id needs here - put your blogger blog id

 var_dump($data);

?></p>

<p>

 

 

Blogger API v3 document에는

https://developers.google.com/blogger/docs/3.0/using" target="_blank">https://developers.google.com/blogger/docs/3.0/using

 

Adding a post

https://www.googleapis.com/blogger/v3/blogs/blogId/posts/" target="_blank">https://www.googleapis.com/blogger/v3/blogs/blogId/posts/

 

Request

</p>

<p>POST <a href="<a href="https://www.googleapis.com/blogger/v3/blogs/8070105920543249955/posts/" target="_blank" rel="noopener noreferrer">https://www.googleapis.com/blogger/v3/blogs/8070105920543249955/posts/</a>" target="_blank"><a href="https://www.googleapis.com/blogger/v3/blogs/8070105920543249955/posts/" target="_blank" rel="noopener noreferrer">https://www.googleapis.com/blogger/v3/blogs/8070105920543249955/posts/</a></a>

Authorization: /* OAuth 2.0 token here */

Content-Type: application/json</p>

<p>{

  "kind": "blogger#post",

  "blog": {

    "id": "8070105920543249955"

  },

  "title": "A new post",

  "content": "With <b>exciting</b> content..."

}</p>

<p>

 

Response

</p>

<p>{

 "kind": "blogger#post",

 "id": "6819100329896798058",

 "blog": {

  "id": "8070105920543249955"

 },

 "published": "2012-05-20T20:08:00-07:00",

 "updated": "2012-05-20T20:08:35-07:00",

 "url": "<a href="<a href="http://brettmorgan-test2.blogspot.com/2012/05/new-post.html" target="_blank" rel="noopener noreferrer">http://brettmorgan-test2.blogspot.com/2012/05/new-post.html</a>" target="_blank"><a href="http://brettmorgan-test2.blogspot.com/2012/05/new-post.html" target="_blank" rel="noopener noreferrer">http://brettmorgan-test2.blogspot.com/2012/05/new-post.html</a></a>",

 "selfLink": "<a href="<a href="https://www.googleapis.com/blogger/v3/blogs/8070105920543249955/posts/6819100329896798058" target="_blank" rel="noopener noreferrer">https://www.googleapis.com/blogger/v3/blogs/8070105920543249955/posts/6819100329896798058</a>" target="_blank"><a href="https://www.googleapis.com/blogger/v3/blogs/8070105920543249955/posts/6819100329896798058" target="_blank" rel="noopener noreferrer">https://www.googleapis.com/blogger/v3/blogs/8070105920543249955/posts/6819100329896798058</a></a>",

 "title": "A new post",

 "content": "With <b>exciting</b> content...",

 "author": {

  "id": "16258312240222542576",

  "displayName": "Brett Morgan",

  "url": "<a href="<a href="http://www.blogger.com/profile/16258312240222542576" target="_blank" rel="noopener noreferrer">http://www.blogger.com/profile/16258312240222542576</a>" target="_blank"><a href="http://www.blogger.com/profile/16258312240222542576" target="_blank" rel="noopener noreferrer">http://www.blogger.com/profile/16258312240222542576</a></a>",

  "image": {

   "url": "<a href="<a href="https://resources.blogblog.com/img/b16-rounded.gif" target="_blank" rel="noopener noreferrer">https://resources.blogblog.com/img/b16-rounded.gif</a>" target="_blank"><a href="https://resources.blogblog.com/img/b16-rounded.gif" target="_blank" rel="noopener noreferrer">https://resources.blogblog.com/img/b16-rounded.gif</a></a>"

  }

 },

 "replies": {

  "totalItems": "0",

  "selfLink": "<a href="<a href="https://www.googleapis.com/blogger/v3/blogs/8070105920543249955/posts/6819100329896798058/comments" target="_blank" rel="noopener noreferrer">https://www.googleapis.com/blogger/v3/blogs/8070105920543249955/posts/6819100329896798058/comments</a>" target="_blank"><a href="https://www.googleapis.com/blogger/v3/blogs/8070105920543249955/posts/6819100329896798058/comments" target="_blank" rel="noopener noreferrer">https://www.googleapis.com/blogger/v3/blogs/8070105920543249955/posts/6819100329896798058/comments</a></a>"

 }

}</p>

<p>

 

Blogger API를 이용하여 글 등록 성공 하신 분이나 참고가 될 수 있는 예제 있으시면

이에 대한 조언 부탁 드립니다.

 

감사합니다.

댓글을 작성하려면 로그인이 필요합니다.

답변 1개

채택된 답변
+20 포인트
6년 전
로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인