Parsing a PA-API 5.0 Item Image URL
Examples
import PaapiItemImageUrlParser from '@saekitominaga/paapi-item-image-url-parser';
const imageUrl = new URL('https://m.media-amazon.com/images/I/5198TOs+rnL._SL160_.jpg');
const paapiItemImageUrlParser = new PaapiItemImageUrlParser(imageUrl);
paapiItemImageUrlParser.getId(); // '5198TOs+rnL'
paapiItemImageUrlParser.getSize(); // 160
paapiItemImageUrlParser.getExtension(); // '.jpg'
paapiItemImageUrlParser.toString(); // 'https://m.media-amazon.com/images/I/5198TOs+rnL._SL160_.jpg'
paapiItemImageUrlParser.setSizeMultiply(2);
paapiItemImageUrlParser.getSize(); // 320
paapiItemImageUrlParser.setSizeDivision(3);
paapiItemImageUrlParser.getSize(); // 107
paapiItemImageUrlParser.setSize(320);
paapiItemImageUrlParser.getSize(); // 320
paapiItemImageUrlParser.removeSize();
paapiItemImageUrlParser.getSize(); // null
paapiItemImageUrlParser.toString(); // 'https://m.media-amazon.com/images/I/5198TOs+rnL.jpg'
import PaapiItemImageUrlParser from '@saekitominaga/paapi-item-image-url-parser';
const imageUrl = new URL('https://m.media-amazon.com/images/I/5198TOs+rnL.jpg');
const paapiItemImageUrlParser = new PaapiItemImageUrlParser(imageUrl);
paapiItemImageUrlParser.getId(); // '5198TOs+rnL'
paapiItemImageUrlParser.getSize(); // null
paapiItemImageUrlParser.getExtension(); // '.jpg'
paapiItemImageUrlParser.toString(); // 'https://m.media-amazon.com/images/I/5198TOs+rnL.jpg'
try {
paapiItemImageUrlParser.setSizeMultiply(2); // Error
} catch {
}
try {
paapiItemImageUrlParser.setSizeDivision(3); // Error
} catch {
}
paapiItemImageUrlParser.setSize(320);
paapiItemImageUrlParser.getSize(); // 320
Constructor
new PaapiItemImageUrlParser(inputUrl: URL)
Parameters
inputUrl
- Image URL
Methods
toString(): string
- Get the entire Image URL string.
getId(): string
- Get the ID part of URL
getSize(): number | null
- Get the size part of URL
setSize(size: number): void
- Set the image size (Used to get images of different sizes)
removeSize(): void
- Remove the image size (Used to get the original size image)
setSizeMultiply(multiply: number): void
- Multiply the size of the image (Used to get images of different sizes)
setSizeDivision(division: number): void
- Division the size of the image (Used to get images of different sizes)
getExtension(): string
- Get the extension part of URL
Old browsers & Node.js
Private class methods feature is used since version 2.2. Supported environments are Firefox 90+, Chrome 84+, Safari 15+, and Node.js 14.6+.