質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

Q&A

0回答

1847閲覧

google oauth2でのトークンの有効期限内なのに期限切れとされる問題につきまして

YutakaSatou

総合スコア11

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

1グッド

0クリップ

投稿2016/12/06 09:01

編集2022/01/12 10:55

###前提・実現したいこと
picasa web apiを使用して画像をアップロード、更新したい

###発生している問題・エラーメッセージ
すでに4年前程から稼働しているサービスで先月まではなんの問題もなくアップロード、更新はできていました。
しかし、先月突然トークンの期限が切れていると言う内容のエラーが発生してgoogleの認証を蹴られてしまいます。

HTTP/1.1 403 Forbidden Expires: Tue, 06 Dec 2016 08:04:52 GMT Date: Tue, 06 Dec 2016 08:04:52 GMT Cache-control: private, max-age=0, must-revalidate Content-type: text/html; charset=UTF-8 X-content-type-options: nosniff X-frame-options: SAMEORIGIN X-xss-protection: 1; mode=block Server: GSE Set-cookie: _rtok=CW0qc3_IWcd2; Path=/; Secure; HttpOnly Set-cookie: S=photos_html=WIW5UVKwAi8tJug0Xh279F8P9Q7ShFZ7; Domain=.google.com; Path=/; Secure; HttpOnly Alt-svc: quic=":443"; ma=2592000; v="36,35,34" Accept-ranges: none Vary: Accept-Encoding Connection: close Access forbidden.

###該当のソースコード

// Zendの読み込み parent::append('Zend/Loader.php'); Zend_Loader::loadClass('Zend_Gdata'); Zend_Loader::loadClass('Zend_Gdata_ClientLogin'); Zend_Loader::loadClass('Zend_Gdata_Photos'); Zend_Loader::loadClass('Zend_Http_Client'); Zend_Loader::loadClass('Zend_Gdata_Photos_PhotoQuery'); parent::append('googleApiPhpClient/src/Google/autoload.php'); $googleClient = new Google_Client(); $googleClient->setClientId('クライアントID'); $googleClient->setClientSecret('クライアントシークレット'); //$googleClient->setApprovalPrompt('force'); 試したが変わらず //$googleClient->setAccessType('offline'); 試したが変わらず $auth = $googleClient->getAuth(); $token = '{"access_token": "トークン","token_type": "Bearer","expires_in": 3600,"refresh_token": "リフレッシュトークン"}'; $auth->setAccessToken($token); if ($auth->isAccessTokenExpired()) { $refreshToken = $auth->getRefreshToken(); $auth->refreshToken($refreshToken); $token = $auth->getAccessToken(); } $client = new Zend_Gdata_HttpClient(); $client->setClientLoginToken($token); $gphoto = new Zend_Gdata_Photos($client);

###試したこと
こちら(http://qiita.com/tamanobi/items/be3eede75c9ede41fce4)を参考に新規にトークンを取得し直しましたが上記のエラーが出ます。

###補足情報(言語/FW/ツール等のバージョンなど)
同様の使い方で画像を読み込むことは可能な状態です。
$gphoto = new Zend_Gdata_Photos($client);

$gphoto = new Zend_Gdata_Photos();

としています。

こちらの認識としては有効期限の切れていないトークンを使用しているのに期限が切れているとエラーが返されるのが問題と認識しております。
同じ様な症状の方いらっしゃいませんでしょうか?
先月までは問題なく使えていたためgoogleの問題なのかこちらの問題なのか判断しかねています。

使用アプリケーション
PHP Version 5.2.13
Zend
cakePHPをベースにした独自フレームワークを使用しています。

初めての投稿なので不備など御座いましたらお申し付け下さい。
宜しくお願い致します。
よろしくお願い致します。

IsamuN👍を押しています

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問