J'essaie d'obtenir les détails du produit Amazon à partir de son ASIN. L'API du produit permet de faire un Itemlookup avec ASIN
, mais la valeur de retour est dans XML
.
Je veux faire cet appel pour Itemlookup du côté client, donc je voudrais faire un appel JSONP
, que je n'ai pas pu trouver.
J'ai trouvé quelques articles sur le Web pour convertir le XML au format JSON
en utilisant la feuille de style XSLT:
(a) https://bitbucket.org/basti/python-Amazon-product-api/src/tip/examples/json-results.py
J'ai essayé d'utiliser ce python-Amazon-product-api
et cet exemple, mais je n'ai pas pu obtenir de retour JSON
.
(b) http://www.kokogiak.com/gedankengang/2006/05/consuming-amazons-web-api-directly.html
La demande que j'ai essayé d'envoyer est:
http://xml-us.amznxslt.com/onca/xml?AWSAccessKeyId=[ACCESS KEY]&AssociateTag=[ASSOCIATE TAG]&ContentType=text%2Fjavascript&IdType=ASIN&ItemId=B008IEGS9W&Operation=ItemLookup&ResponseGroup=Images%2CItemAttributes&Service=AWSECommerceService&Style=http%3A%2F%2Fforums.delphiforums.com%2Fdelphidocsz%2Famazon%2Fjson.xsl&Timestamp=2012-09-04T06%3A40%3A11Z&Signature=AGOqXvVSeMp3YyVkT4mGNXVx0cFGG%2Bh%2FdAebevbbF9o%3D
Aidez-moi à obtenir un format JSON avec Amazon product API
. Toutes suggestions sont les bienvenues.
L'OP peut exécuter cette feuille de style (document d'entrée non utilisé) pour déterminer sa version XSLT.
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:msxsl="urn:schemas-Microsoft-com:xslt"
exclude-result-prefixes="xsl msxsl">
<xsl:output method="html" indent="yes"/>
<xsl:template match="/">
<html>
<head><title>About your XSLT Processor</title></head>
<body>
<ul>
<li>xsl:version=<xsl:value-of select="system-property('xsl:version')" /></li>
<li>xsl:vendor=<xsl:value-of select="system-property('xsl:vendor')" /></li>
<li>xsl:vendor-url=<xsl:value-of select="system-property('xsl:vendor-url')" /></li>
<li>xsl:product-name=<xsl:value-of select="system-property('xsl:product-name')" /></li>
<li>xsl:product-version=<xsl:value-of select="system-property('xsl:product-version')" /></li>
<li>xsl:is-schema-aware=<xsl:value-of select="system-property('xsl:is-schema-aware')" /></li>
<li>xsl:supports-serialization=<xsl:value-of select="system-property('xsl:supports-serialization')" /></li>
<li>xsl:supports-backwards-compatibility=<xsl:value-of select="system-property('xsl:supports-backwards-compatibility')" /></li>
<li>msxsl:version=<xsl:value-of select="system-property('msxsl:version')" /></li>
</ul>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
Essayez l'une de ces options ::
J'ai moi-même essayé thomasfrank. C'est facile et fonctionne bien :)
(divulgation) Je suis Max et je suis cofondateur de Zinc (zinc.io). Notre API produit une réponse JSON pour les prix et la page de détails du produit. Voici une réponse typique pour les détails ASIN: https://www.dropbox.com/s/peccdc1m2j34e0d/B018QPI98A.json?dl= . Si vous êtes intéressé, voyez ici: docs.zincapi.com