2017-09-22 6 views
0

Je pense que je suis exactement les instructions dans la documentation (https://cran.r-project.org/web/packages/httr/vignettes/quickstart.html) mais je ne peux pas obtenir la fonctionnalité add_headers pour fonctionner. Un exemple simple est:R HTTR Ajouter les en-têtes ne fonctionnant pas

library(httr) 
res <- GET('http://www.google.com', httr::add_headers(Referer= 'https://www.google.com/'), user_agent('Mozilla/5.0 (X11; Linux x86_64; rv:55.0) Gecko/20100101 Firefox/55.0')) 
str(content(res)$headers) 

La dernière ligne est censée imprimer l'en-tête de la demande et j'obtiens NULL

Répondre

2

C'est parce que google.com retourne HTML, et content par défaut parse avec xml2 à xml_document que vous ne pouvez pas indexer avec $headers. Et les en-têtes est un champ renvoyé par httpbin.org dans JSON, mais pas par google.com (en-têtes de google, comme la plupart des sites le feront, vous pouvez obtenir par res$headers)