如何为httr :: GET配置参数提供多个配置值

时间:2015-03-25 19:55:48

标签: r azure-storage httr

对于Azure Blob存储,我需要提供authentication values以及另一个名为x-ms-date的标头。

设置

library(httr)
container<-"https://preconstuff.blob.core.windows.net/?comp=list"
sak<-"Q8HvUVJLBJK+wkrIEG6LlsfFo19iDjneTwJxX/KXSnUCtTjgyyhYnH/5azeqa1bluGD94EcPcSRyBy2W2A/fHQ=="
login<-authenticate(user = "preconstuff",password = sak)
extras<-add_headers(`x-ms-date`=Sys.time())

问题

如果我运行content(GET(container,config = login )),则表示未提供日期标题。

在同时使用对象loginextras方面,将它们作为列表放置似乎不起作用。

如果我更改extras以包含身份验证组件(从userpwd函数中获取authenticate标头构造)

extras<-add_headers(httpauth =1, userpwd = paste0("preconstuff:", sak), 
                    `x-ms-date`=as.character(Sys.time()))

然后运行content(GET(container,config = extras )),我得到“ResourceNotFound”,表示它无法识别我的凭据。

如何正确传递多个值?

1 个答案:

答案 0 :(得分:0)

传递给GET()的所有未命名参数都会传递到config。这意味着你可以做到

content( GET(container, login, extras) )

或者,他的配置选项基本上只是列表,您可以使用c()来组合位。例如

content( GET(container, config = c(login, extras)) )