[
自宅サーバーWebRing
┃
前
|ID=54
前後5表示
|
次
┃
乱移動
|
サイト一覧
]
このサイト内
書籍 DVD CD
Google(日本語)
Google(Web全体)
Google(イメージ)
Google(キャッシュ)
Yahoo! JAPAN
goo 英和
goo 和英
goo 国語
goo 新語
サイトマップ
リンク集
ダウンロード
フォーラム
Users Wiki
最新情報
TOP
»
UsersWiki
»
nao-pon
»
blog
» 2009-05-09のソース
|
一覧
検索
最新
ヘルプ
ページへ戻る
履歴
リンク元
印刷
Product Advertising API って一体・・・
のソース
UsersWiki
:
nao-pon
/
blog
/
2009-05-09
のソース
差分
を表示
nao-pon/blog/2009-05-09
へ行く。
« Prev
#navi RIGHT:&rsslink(../); #boxdate * Product Advertising API って一体・・・ [#w1d52784] RIGHT:&tag(Amazon,プログラミング); Amazon の Associates Web Service が Product Advertising API に名称変更になったとのこと。 名称変更だけならいいのだけど、今後のリクエストには認証が必要になり、プログラム変更を 8月15日 までに済ませなければ、いけないらしい。 これが、どのようにするのかよく分からない。 Amazon.com のアカウントは持っていたので、とりあえず秘密キーは作成した。 この先は、 - http://docs.amazonwebservices.com/AWSECommerceService/latest/DG/index.html?RequestAuthenticationArticle.html を見れば分かるらしいのだが、なんせ英語が分かんない。 :cry: 今日は、ここまで。 ---- と思ったけど気になったので、ちょっと頑張ってみました。 とりあえず、PHP の hash_hmac() が使える環境 (PHP 5 >= 5.1.2, PECL hash >= 1.1) であれば、動作するようになりました。 肝は base64 でエンコードするところでしょうか。 #code(php,nonumber){{ $hash = base64_encode(hash_hmac('sha256' , $data, $key, TRUE)); }} あとは、hash_hmac() が使えない環境向けに代用関数を探すだけ。(これが大変かも :thinking: ) 誰か知っていたら教えてください。 :shy: ** PHP での REST のまとめ [#edbea642] 検索で、訪れてくれる人が多いようなので、簡単にまとめておきます。 + 何はともあれ、amazon.com のアカウントを取って、AWS から秘密キーを作成する。 + GETクエリの構築 -- 配列 $params にクエリキーをキーとして値が入っているとする -- クエリに Timestamp を加える #code(php,nonumber){{ $params['Timestamp'] = gmdate('Y-m-d\TH:i:s\Z'); }} -- クエリのキーを元に昇順ソートし、値を URL エンコードしてGETクエリを作成 #code(php,nonumber){{ ksort($params); $querys = array(); foreach($params as $key=>$val) { $querys[] = $key . '=' . rawurlencode($val); } $query = join ('&', $querys); }} -- そのクエリと秘密キー($key)を元に Signature を作成 #code(php){{ $data = 'GET' . "\n" . 'webservices.amazon.co.jp' . "\n" . '/onca/xml' . "\n" . $query; if (function_exists('hash_hmac') && function_exists('hash_algos') && (in_array('sha256', hash_algos()))) { $signature = base64_encode(hash_hmac('sha256' , $data, $key, TRUE)); } else if (function_exists('mhash') && defined('MHASH_SHA256')) { $signature = base64_encode(mhash(MHASH_SHA256 , $data, $key)); } else { $signature = ''; } }} -- Signature が作成できれば、クエリに追加 #code(php,nonumber){{ if ($signature) $query .= '&' . $signature; }} + あとは、できあがった GETクエリで今まで通りにリクエスト ざっと、こんな感じです。 :ok: hash_hmac() も mhash() も使えない環境への対応は、代用関数が見つからないので、私の力量では無理です。 :-( RIGHT:&font(90%){&page_comments;}; #navi
« Prev
nao-pon/blog/2009-05-09 のバックアップ一覧
nao-pon/blog/2009-05-09 のバックアップソース(No. All)
1: 2009-05-09 (土) 00:17:10
nao-pon
2: 2009-05-09 (土) 02:17:18
nao-pon
3: 2009-05-09 (土) 15:25:04
nao-pon
4: 2009-09-19 (土) 07:56:11
通りすがりさん[ph0I5ghQiGk]
5: 2009-09-19 (土) 07:56:11
nao-pon
With "replacer" plugin. at 2009-11-23 (月) 13:46:34
現: 2009-09-19 (土) 07:56:11
nao-pon
With "replacer" plugin. at 2009-11-23 (月) 13:50:04
ぺージ情報
ぺージ名 :
nao-pon/blog/2009-05-09
ページ別名 :
未設定
ページオーナー :
nao-pon
閲覧可
グループ :
すべての訪問者
ユーザー :
すべての訪問者
編集可
グループ :
なし
ユーザー :
ゲスト
Counter: 505, today: 2, yesterday: 0
メインメニュー
ホーム
価格比較 百貨
UsersWiki
新規ページ作成
最新ページ一覧
全ページ一覧
全コメント一覧
ヘルプ
» 関連ページ
» 記述を見る
» 変更点を見る
» バックアップ一覧
» 添付ファイル一覧
» リンク元一覧
xpwiki
お問い合わせ
ファイルマネージャー
ログイン
ユーザー名:
パスワード:
パスワード紛失
|
新規登録
最近の更新
最新の20件
2023-05-14
nao-pon
/
gmap + gmap_street + gmap_insertmarker
nao-pon
/
googlemaps2
2023-03-22
PublicBlog
/
The Importance of QFP in PCB
2023-02-28
FrontPage
/
PCB terminology you must know
2023-01-20
nao-pon
/
blog
/
ESP8266 を壊してしまいました しかも続けて2回も
2022-09-22
nao-pon
/
blog
/
ESP32 + ESPHome の Bluetooth Proxy で SwitchBot Mater
2022-08-26
nao-pon
/
blog
/
独自ビルドの Tasmota を 12.1.1 へ
2022-08-19
nao-pon
/
blog
/
Zigbee + ZHA のメモ書き
2022-01-17
nao-pon
/
blog
/
HomeAssistant 統合の Tasmota-IRHVAC に貢献
2021-08-03
nao-pon
/
ファイル置き場
/
スペースサワダ
2021-07-01
nao-pon
/
blog
/
HomeAssistant 統合の Tasmota-IRHVAC の不具合修正
2021-06-20
nao-pon
/
blog
/
Tasmota を 9.4.0 から 9.5.0 へアップデート
2021-06-15
nao-pon
/
blog
/
ミンティア[MINTIA] で WiFi 6ボタンスイッチを作った
2021-04-27
PublicBlog
2021-03-17
nao-pon
/
blog
/
SwitchBot 温湿度計を ESP32 でモニタリング
2021-03-13
nao-pon
/
blog
/
東芝エアコンのエントリーモデルもWiFi化
2021-02-23
risoulaser
2021-02-18
nao-pon
/
blog
/
Panasonic (ナショナル) エアコンの 2008 年モデルも WiFi 化
2021-02-15
nao-pon
/
blog
/
Tasmota で HA 端子(JEM-A) 連携
2021-02-07
nao-pon
/
blog
/
Tasmota で三菱エアコンを完全コントロール
オンライン状況
275 人のユーザが現在オンラインです。 (4 人のユーザが UsersWiki を参照しています。)
登録ユーザ: 0
ゲスト: 275
もっと...
サイト情報