Если посмотреть на предоставленный вами помощник по подписанным запросам , пример URL выглядит следующим образом:
http://ecs.amazonaws.com/onca/xml?Service=AWSECommerceService&Version=2011-08-01&AssociateTag=PutYourAssociateTagHere&Operation=ItemSearch&SearchIndex=Books&Keywords=harry+potter
Поэтому необходимо внести некоторые изменения в список nvp, который вы предоставили выше. Эти изменения: 1. Поместите каждый параметр в строку (например, «Версия = 2011-08-01» вместо «Версия» = «2011-08-01». 2. Убедитесь, что форматирование соответствует (например, в примере URL, Version предшествует &, поэтому мы уверены, что это добавлено. 3. Наконец, нам нужен базовый URL, чтобы вставить его (это все в примере URL до Service).
nvp = c("Service=AWSECommerceService",
"&Version=2011-08-01",
"&AssociateTag=PutYourAssociateTagHere",
"&Operation=ItemSearch",
"&SearchIndex=Books",
"&Keywords=harry+potter",
"&Timestamp=2020-02-26T11:25:14.000Z",
"&AWSAccessKeyId = XXX")
base_url = "http://ecs.amazonaws.com/onca/xml?"
Затем нам нужно вставить вместе base_url и nvp, чтобы сделать наш URL
amazon_url = paste0(base_url, paste(nvp, collapse=''))
Это дает URL, который мы можем передать getURL. Если вы передадите ассоциированный тег / AWS Идентификатор ключа доступа, это должно сработать, я в настоящее время получить «должен содержать AWS ошибка идентификатора ключа доступа».
[Это очевидно очень ручной подход, если вы хотите быть более прогаматированными c в поиске, вы можете сделать:
AWSAccessKeyID = '1234'
keywords = 'harry+potter'
Затем их можно передать в пасту с незначительными изменениями
nvp = list("Service=AWSECommerceService",
"&Version=2011-08-01",
"&AssociateTag=PutYourAssociateTagHere",
"&Operation=ItemSearch",
"&SearchIndex=Books",
"&Keywords=", keywords,
"&Timestamp=2020-02-26T11:25:14.000Z",
"&AWSAccessKeyId=" AWSAccessKeyID
)
amazon_url = paste0(base_url, paste(nvp, collapse=''))
]