Google Reader 終了 2013/07/01 : feedly
3月 14th, 2013
また大きな終了ですね。 いろいろサービス集約に利用出来たので残念です。 読むだけならgoogle plusで読めるのですが http://www.theverge.com/2013/3/13/4101534/feedly-clones-google-reader-api readerサービスはgoogle reader apiを使ってきたのですがどうなるのでしょうね feedlyがthird partyにもapiのようなものを提供する可能性。メールして聞いてみるのもよさそうですね。 http://blog.feedly.com/2013/03/14/google-reader/
gettextで他言語対応 | php
12月 11th, 2011
index.phpに以下のように <?php echo _(‘Here is top page.’); ?> xgettext index.php –from-code=utf-8 -o messages.pot # SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE’S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # FIRST AUTHOR , YEAR. # #, fuzzy msgid “” msgstr “” “Project-Id-Version: PACKAGE VERSION\n” “Report-Msgid-Bugs-To: \n” […]
mixiアプリ署名付きリクエスト認証のために OauthProvider を使ってみる | PHP
8月 26th, 2011
http://www.php.net/manual/en/class.oauthprovider.php ↓ここを見てやってみろと書いてあるので ・Writing an Oauth Provider Service http://toys.lerdorf.com/archives/55-Writing-an-OAuth-Provider-Service.html ・Oauth Provier sample http://svn.php.net/viewvc/pecl/oauth/trunk/examples なんかできない気がしたので諦めた。 http://developer.mixi.co.jp/appli/spec/pc/require_servers/ 一通りこちらのOauth.phpは読んだので、まねして、使うところだけ実装。 無事完了 ・mixiからのリクエストのsignatureチェック ・mixiへのリクエストの作成。 やることはほとんど同じで。 基本機能はだいたいわかったので、明日は、インターフェイスのベース作成とデータ設計を。 来週中にはリリースできそう。でも次のツールも考えてるので。
mixi openid : RPからhttps://mixi.jp/へのSSL接続に失敗します。
7月 15th, 2011
http://developer.mixi.co.jp/openid/faq/ RPからhttps://mixi.jp/へのSSL接続に失敗します。どんな対策が必要ですか? に従ってサーバーの証明書を更新します。 前もやったんだけど、メモってなかったのかな http://insilico.jognote.com/blog/2008/08/13/curl-%E3%81%AB-https-%E3%81%A7%E3%82%A2%E3%82%AF%E3%82%BB%E3%82%B9%E3%81%A7%E3%81%8D%E3%82%8B%E3%82%88%E3%81%86%E3%81%AB%E8%A8%BC%E6%98%8E%E6%9B%B8%E3%82%92%E8%BF%BD%E5%8A%A0%E3%81%99%E3%82%8B/ あれ?入ってた。
Open ID : associate type ASSOC_TYPE_HMAC_SHA1 これも
1月 23rd, 2011
ちょとこのversionと暗号化の組み合わせは何でしょう。 まぁライブラリが正解とは言えないので良いのです。 修正しました。やっとmixiでログイン成功~ if (OpenID::$versionMap[$version] == OpenID::NS_2_0) { $this->message->set(‘openid.ns’, OpenID::NS_2_0); if(preg_match(‘/mixi.jp/’,$this->opEndpointURL)){ $this->message->set(‘openid.assoc_type’, self::ASSOC_TYPE_HMAC_SHA1); $this->message->set(‘openid.session_type’, self::SESSION_TYPE_DH_SHA1); }else{ $this->message->set(‘openid.assoc_type’, self::ASSOC_TYPE_HMAC_SHA256); $this->message->set(‘openid.session_type’, self::SESSION_TYPE_DH_SHA256); }
OpenID : session_type DH_SHA1 or DH-SHA256 ? mixi.jpの罠 ?
1月 22nd, 2011
PearのOpenIDライブラリを使っているのですが、 mixi.jp の OpenIDを利用したところ以下のエラーが返された。 “Missing dh_server_public parameter in association response” https://mixi.jp/openid_server.pl データは取得出来ていたけど、dh_server_publicがかえってこなかった。。。 ようやく原因がわかりました。。。 session_typeには、 no-encryption DH-SHA1 DH-SHA256 の3つがあるのですが、sslのときは、当然利用が必要です。 mixi.jpはhttps://につなぎに行くのですが versionが http://specs.openid.net/auth/2.0/server のため OpenID_Association_Request のconstruct内で versionから session_type = DH-SHA256 と設定されました。 残念ながら mixi.jpはDH-SHA256では、 dh_server_public enc_mac_key が返されませんでした ; o ; 仕方ないのでmixiのときは、 DH_SHA1 にして無事認証完了^-^; // Set defaults $this->message->set(‘openid.mode’, OpenID::MODE_ASSOCIATE); if (OpenID::$versionMap[$version] == OpenID::NS_2_0) { $this->message->set(‘openid.ns’, OpenID::NS_2_0); $this->message->set(‘openid.assoc_type’, self::ASSOC_TYPE_HMAC_SHA256); +++ if(preg_match(‘/mixi.jp/’,$this->opEndpointURL)){ […]
GData API with secure AuthSub
8月 1st, 2010
Authsub を secure=1 で We have a certificate for your domain. Upload new X.509 cert: (Optional) に # Generate the RSA keys and certificate openssl req -x509 -nodes -days 365 -newkey rsa:1024 -sha1 -subj \ ‘/C=US/ST=CA/L=Mountain View/CN=www.example.com’ -keyout \ myrsakey.pem -out /tmp/myrsacert.pem で生成した myrsacert.pem を登録して zendのclient作成時に myrsakey.pem を設定してあげると警告が消えます! $client = new Zend_Gdata_HttpClient(); // This sets […]
Yahoo OpenID Attribute Exchange をPHPで利用してみる!
7月 26th, 2010
まずは↓この通りにopenidを使ってみてください。 http://techblog.yahoo.co.jp/web/openid/10yahooopenid_rp/ ↓次に、こちらPHPじゃないですが、画面遷移は同じです! Yahoo OpenID AX Attribute Exchange! http://techblog.yahoo.co.jp/web/openid/openid_axyahoo/ でphpは何を変えるかというと try_auth.php(リクエスト用を修正です!) require_once “Auth/OpenID/AX.php”; でAXも利用可能に。 さらに function run()内の $auth_request = $consumer->begin($openid); の下あたりに AXを追加! 画像とfriendlyをnicknameとしてとってみる。 $ax_request = new Auth_OpenID_AX_FetchRequest(); $ax_request->add( Auth_OpenID_AX_AttrInfo::make(‘http://axschema.org/media/image/default’, 1,true,’image’)); $ax_request->add( Auth_OpenID_AX_AttrInfo::make(‘http://axschema.org/namePerson/friendly’ ,1,true,’nickname’)); で早速Yahooへログイン!同じく try_auth.phpからYahooへリダイレクトされる finish_auth.phpへ返されるパラメータに ["openid_ax_value_image"]=> string(54) “https://s.yimg.jp/images/login/openid/img/01/pic90.gif” ["openid_ax_value_nickname"]=> string(12) “ヤフーのID” の2つが入ってきます。 だいたい問題ないので、次はphpのセッションを少し修正してサービスへ導入します。
Yahoo APIでOAuthを利用してみる 2
7月 20th, 2010
Yahooのウォッチリスト取得に成功しました! appidは要らないみたいですね~。 http://www.php.net/manual/ja/oauth.examples.fireeagle.php を参考にyahooで動くように変更してみました。 是非使ってみてください。 <?php $req_url = ‘https://auth.login.yahoo.co.jp/oauth/v2/get_request_token'; $callback_url = ‘このファイルのURLです!'; $authurl = ‘https://auth.login.yahoo.co.jp/oauth/v2/request_auth'; $acc_url = ‘https://auth.login.yahoo.co.jp/oauth/v2/get_token'; $api_url = ‘http://auctions.yahooapis.jp/AuctionWebService/V2/closeWatchList'; $conskey = ‘your_consumer_key';// yahooで取得したconsumer key $conssec = ‘your_consumer_secret';// yahooで取得したconsumer secret session_start(); // セッションの state の値が1の場合、次のリクエストには oauth_token の値が含まれているはずである // やり直す時は stateを 0 にします。 if(!isset($_GET['oauth_token']) && $_SESSION['state']==1) $_SESSION['state'] = 0; try { // OAUTH_AUTH_TYPE_AUTHORIZATION に変更 // […]
php oauth-1.0.0 をインストール
7月 19th, 2010
http://php.net/manual/ja/book.oauth.php http://pecl.php.net/package/oauth #pecl install oauth-1.0.0 … Build process completed successfully Installing ‘/usr/lib/php/modules/oauth.so’ install ok: channel://pecl.php.net/oauth-1.0.0 configuration option “php_ini” is not set to php.ini location You should add “extension=oauth.so” to php.ini #vim /etc/php.d/oauth.ini extension=oauth.so #php -i OAuth OAuth support => enabled PLAINTEXT support => not supported RSA-SHA1 support => enabled HMAC-SHA1 support => enabled Request engine […]