Product Advertising API
Amazonが提供するWebAPIで、商品情報取得、商品検索機能、ショッピングカート機能などを提供しています。
Webサービスのマネタイズとしては、標準装備かもなぁ。
なんて考えて今勉強中です(・ω・)
わかりません(汗)
コードに一番近い[API Reference]から読んでみました。
コードに近いドキュメントなら、英語だってなんとなくイメージ掴めるし、
翻訳(サイト|機能)使えば、へっちゃらかなぁって思ったんですけど。
とりあえず、各Operationsに対して必要なリクエストパラメータを渡してあげれば、
リクエストパラメータ[ResponseGroup]で指定した項目が、XML形式で返ってくることはわかった。
しかし、英文書をちゃんと読み解けたとは到底思えません(・ω・;
とりあえずイジってみる
もう手を動かした方が早いと思ったので、Product Advertising APIのテストサービス作りました!
せっかく、GAE/Jも勉強しているので上げてみました!
http://csd-tech.appspot.com/aws/
これで入出力が見えるので理解も進むでしょう(^ω^)
Operations:Helpに頼る
Operation:Helpを使って、各Operationの入力パラメータと利用できる[ResponseGroup]が確認できます。
- RequiredParameters:必須パラメータ
- AvailableParameters:指定可能なパラメータ
- DefaultResponseGroups:[ResponseGroup]の初期値
- AvailableResponseGroups:指定可能な[ResponseGroup]
例えば、
- Operation=Help
- About=CartCreate
- HelpType=Operation
を指定すると、こんな感じ。
<?xml version="1.0" encoding="UTF-8"?> <HelpResponse xmlns="http://webservices.amazon.com/AWSECommerceService/2009-10-01"> <OperationRequest> <HTTPHeaders> <Header Name="UserAgent" Value="AppEngine-Google; (+http://code.google.com/appengine; appid: csd-tech)"> </Header> </HTTPHeaders> <RequestId> 0YK35676HR993W3N74V5 </RequestId> <Arguments> <Argument Name="Service" Value="AWSECommerceService"> </Argument> <Argument Name="Signature" Value="********************************************"> </Argument> <Argument Name="ResponseGroup" Value="Help"> </Argument> <Argument Name="HelpType" Value="Operation"> </Argument> <Argument Name="Operation" Value="Help"> </Argument> <Argument Name="AWSAccessKeyId" Value="********************"> </Argument> <Argument Name="Version" Value="2009-10-01"> </Argument> <Argument Name="Timestamp" Value="2009-11-20T13:19:49Z"> </Argument> <Argument Name="About" Value="CartCreate"> </Argument> </Arguments> <RequestProcessingTime> 0.0161569118499756 </RequestProcessingTime> </OperationRequest> <Information> <Request> <IsValid> True </IsValid> <HelpRequest> <About> CartCreate </About> <HelpType> Operation </HelpType> <ResponseGroup> Help </ResponseGroup> </HelpRequest> </Request> <OperationInformation> <Name> CartCreate </Name> <RequiredParameters> <Parameter> AssociateTag </Parameter> <Parameter> Items </Parameter> </RequiredParameters> <AvailableParameters> <Parameter> AWSAccessKeyId </Parameter> <Parameter> ContentType </Parameter> <Parameter> LinkCode </Parameter> <Parameter> Marketplace </Parameter> <Parameter> MarketplaceDomain </Parameter> <Parameter> MergeCart </Parameter> <Parameter> Style </Parameter> <Parameter> Validate </Parameter> <Parameter> Version </Parameter> <Parameter> XMLEscaping </Parameter> </AvailableParameters> <DefaultResponseGroups> <ResponseGroup> Request </ResponseGroup> <ResponseGroup> Cart </ResponseGroup> </DefaultResponseGroups> <AvailableResponseGroups> <ResponseGroup> Request </ResponseGroup> <ResponseGroup> Cart </ResponseGroup> <ResponseGroup> CartSimilarities </ResponseGroup> <ResponseGroup> CartTopSellers </ResponseGroup> <ResponseGroup> CartNewReleases </ResponseGroup> </AvailableResponseGroups> </OperationInformation> </Information> </HelpResponse>
あれ?
RequiredParametersに[Items]が含まれてる。。
Product Advertising APIによると、
[Items]は、Required=Noだから必須じゃないはず。
実際に動かしてみると、[Items]は必須ではなかった。
こりゃ、使いこなすまで時間かかりそうだな (-ω-;