アマゾンのインスタントストアと楽天の情報を共存させる方法 | うたらぼ(アメブロ)

アマゾンのインスタントストアと楽天の情報を共存させる方法

アマゾンのアフィリエイトで、インスタントストアを使っていますか?

私の作ったインスタントストアで、

ワイド版 風の谷のナウシカ7巻セット「トルメキア戦役バージョン」 (アニメージュ・コミックス・ワイド版)

を表示させるとこんな感じ です。


さて、インスタントストアと、他の情報を共存させる方法ですが、frame分割して表示するか、iframeタグを使用する方法があります。ただ、これは、見た目は同じ画面でも、インスタントストアの中の情報をとれる状態ではないです。ただ、表示するだけです。


ColdFusionでは、cfhttpタグというものがあるので、使ってみました。


まずは、パラメータがurlだけのものです。
こちら になります。
この場合ですと、リンクをクリックしても、うまくいきません。


次は、パラメータがurl,resolveURLのものです。
こちら になります。
この場合は、リンクはうまくいきました。
ただ、「ショッピングカートに入れる」を押すと、はいっていないようです。
これは、アマゾンから発行されるsessionIDがないため、「ショッピングカートに入れる」リンクにはIDがついていない状態です。なので、はいらなかったのです。


次は、パラメータがurl,resolveURL,userAgentのものです。
こちら になります。
userAgentをセットすることで、ブラウザから動作したのと同じ状態になります。実際のブラウザからではないので、リンクにはsessionIDと思われるものがついています。
そこで、「ショッピングカートに入れる」ボタンを押してみます。
すると、インスタントストアだけの画面になって、同じ状態です。
なぜこうなるかというと、ブラウザ側のsessionIDとアマゾンから発行されてきたsessionIDが違うため、同じ画面が表示されたと思います。たぶんsessionIDが同じであれば、すんなりショッピングカートにはいったかもしれませんね。


ちなみにiframeを使用したものです。
こちら になります。
ごらんのとおり、リンクをクリックしても、自分で書いたタイトル部分は残ったままとなります。



ということで、
タイトル部分を抜き出して、楽天検索を追加したものがこちら になります。
本であればISBNで検索できるので、楽天ブックスのリンクが表示されます。

ちなみに本以外であれば、こちら になります。

タイトルをスペースや【】とかを区切り文字として、文字列を取得して、楽天で検索しました。いろいろ発見できておもしろいです。



※2016年1月15日更新
・2016年2月末にヘテムルでのColdFusion終了に伴い、該当箇所を utalab.biz にコピーしました。
・楽天APIが古かったので、新しくしました。