検索できるもの
検索できないもの
ひょっとしてカタカナは検索できるけど、ひらがなや漢字が入っていると検索できないのか……と思いきや、検索できるものもあり。
なぜか検索できるもの
謎なんですけど「経済」は検索できているように見えます。「鈴木」でも検索できてる。
結論:返ってくる商品データがまちまちでした
例えば一般的な商品情報だとこんな感じになっています。(発売日に関する部分だけを抜粋)
Items: {
ItemInfo: {
ProductInfo: {
ReleaseDate: {
DisplayValue: "2013-04-05T00:00:01Z",
Label: "ReleaseDate",
Locale: "en_US"
}
}
}
}
ところが商品によっては「ProductInfo」ごと存在しないということがあって、僕は「ReleaseDate」の存在確認しかしていなかったので、エラーが出るというわけ。仕方ないので存在確認のプロセスを多くして、「ReleaseDate」を使うときには事前に「ItemInfo」「ProductInfo」の存在確認もするようにしたらエラーにならなくなりました。
if(
'ItemInfo' in item_data
&& 'ProductInfo' in item_data.ItemInfo
&& 'ReleaseDate' in item_data.ItemInfo.ProductInfo
) {
item.releaseDate = item_data.ItemInfo.ProductInfo.ReleaseDate.DisplayValue
}
なんかもっとスマートなやり方あるような気がしますし、そもそも値がないならプロパティはそのままで値としてnullとか入れてくれればいいのにと思いますけど、とりあえずはこれで。