У меня есть 10 последовательностей цифры, передаваемых мне, и я хочу проверить, что это - действительный ASIN прежде, чем сделать больше обработки и/или переназначения.
Я знаю, что не ISBN ASIN всегда будет нечисловым и 10 знаков в длине
Я просто хочу быть в состоянии сказать, является ли передаваемый пункт действительным ASIN или является им просто строка поиска после того, как я уже устранил это, это мог быть ISBN.
Например, «НАВЕС КАФЕДРЫ» - критерий поиска, в то время как «B000J5XS3C» - ASIN, и «1412775884» ISBN.
Есть ли легкий способ проверить ASIN?
Знаете ли вы, что Amazon предлагает API, в том числе веб-сервис Amazon Associates, позволяющий программно взаимодействовать с Amazon. Подозреваю, что это решит Вашу проблему (в некоторой степени). Дополнительную информацию можно получить на домашней странице Amazon Web Services.
Может быть, вы могли бы проверить на сайте Amazon, существует ли асин.
http://www.amazon.com/dp/your10digitasin
Этот URL возвращает http-statusCode = 200, когда продукт существует и 404, если это не было действительным асином.
"this URL return a http-statuscode=200 when the product exists and a 404 if that was not a valid ASIN."
это НЕ РАБОТАЕТ, поскольку согласно документации ASINs специфичны для региона (проверьте сами, если не верите). вы можете проверить asin из - скажем - amazon.co.uk только на amazon.co.uk, поэтому вы также должны знать, откуда пришел ASIN.
однако в вашем случае лучше иметь три поля ввода - по одному для каждого поиска. или (что гораздо лучше) одно поле с тремя радиокнопками. в качестве альтернативы можно проверить строку по словарю... но угадывание - это все равно ОЧЕНЬ плохая инженерия.
более того, нет легкого способа проверить asin на валидность