11

状況

私はEtsyサンドボックスAPIを使って、すべてのEtsyリストにデフォルトの画像とタイトルを表示したいクライアントのための解決策を見つけようとしています。クリックすると、ウェブサイトからEstyリストのページに移動するように指示されます。

これで、すべてのリストの名前とURLを取得する方法を理解するのは簡単で、1回のパブリックAPI呼び出しで実行できます。

http://openapi.etsy.com/v2/shops/:shop_id/listings/active?method=GET&api_key=:api_key

この呼び出しは、リストの名前とリストのURLだけでなく、その特定のアイテムに関する他の多数の情報も返します。必要なフィールドを取得するだけに呼び出しを制限する必要があると思いますが、例として、私は逸脱します...

私が最も驚いたのは、その巨大な情報の配列に含まれていないものが、そこにあると私が期待するものであるということです。リストに関連付けられた画像、または少なくともメインの画像です。ただし、単一のリストの画像を取得するために行うことができる個別のAPI呼び出しがありますが、それには、listing_idを取得し、アイテムごとに個別のAPI呼び出しを行う必要があります。これにより、Etsy APIへの1回(または2回)の呼び出しであると私が期待するものが1になり、さらに多くのアイテムが返されます。ショップで販売しているアイテムが100個ある場合、それはわずか数秒で101個のAPI呼び出しになります。私をクレイジーと呼んでください、しかし私はこれをするために私が見つけたものより良い方法がなければならないと感じています。

質問

ショップ内のすべてのリストのすべての画像(またはメイン画像)を返すためにEtsy API呼び出しを行う最も簡単な方法は何ですか?

4

1 に答える 1

16

次のコードを使用して、必要なものすべてを1つのAPI呼び出しに含めることにしました。

http://openapi.etsy.com/v2/shops/:shop_id/listings/active?method=GET&api_key=:api_key&fields=title,url&limit=100&includes=MainImage

このようにフィールドを定義して不要な情報がないようにしましたが、結果に制限を設定しincludes=MainImageてクエリ文字列として使用しました。 これは、Etsy開発者コミュニティのメンバーの提案によるものです。

于 2012-07-22T02:48:24.833 に答える