Code Monkey home page Code Monkey logo

Comments (3)

bhushankummar avatar bhushankummar commented on June 3, 2024

@edwardsph
Can you provide the ASIN with which you are facing a problem?

from amazon-mws.

edwardsph avatar edwardsph commented on June 3, 2024

@bhushankumarl, The issue was not any specific ASIN but that the API is designed to take a list of ASIN. I'm afraid I partially wasted your time as I realise now it is possible to add keys to an array since is also behaves like an object. I had been confused by seeing in the debugger the response variable being type "Object {}" or "Array[2]" depending on whether I used 1 ASIN or 2. I assumed it was a problem that this was not consistent. Seeing no tests using multiple inputs, I assumed this had been on oversight. I see now that if I check the structure I can deal with either.
Examples:

ASIN = 0583305571
Res = {
  "ASIN": "0583305571",
  "Product": { }
  "ResponseMetadata": { },
  "Headers": { },
  "StatusCode": 200
} 

ASIN = 0583305571, 1498289223
Res = [
  {
  "ASIN": "0583305571",
  "Product": {  }
  },
  {
  "ASIN": "1498289223",
  "Product": {  }
  },
  "ResponseMetadata": { },
  "Headers": { },
  "StatusCode": 200
]

So I can get the headers from the response whether there is 1 result or more. However, to process the results consistently I do this:

    const resultArray = Array.isArray(res) ? res : [res];

Is this something that it would be useful to add to the docs to explain how the results differ in the 2 circumstances?
Thanks for your time
Pete

from amazon-mws.

bhushankummar avatar bhushankummar commented on June 3, 2024

@edwardsph
That is preety simple API call :

    var ASINList = [ 'ASIN.1', 'ASIN.2' ];
    var mwsRequestData = {
        Version: '2011-10-01',
        Action: 'GetLowestOfferListingsForASIN',
        SellerId: mwsAccount.sellerId,
        MarketplaceId: mwsAccount.marketplaceId,
        ItemCondition: 'New'
    };
    try {
        var index = 1;
        for (var i in ASINList) {
            mwsRequestData[ 'ASINList.ASIN.' + index ] = ASINList[ i ];
            index++;
        }
        var response = await amazonMws.products.searchFor(mwsRequestData);
        console.log('response ', response);
    } catch (error) {
        console.log('error products', error);
    }

from amazon-mws.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.