通知MTURkR AWS_ACCESS_KEY_ID和AWS_SECRET_ACCESS_KEY

时间:2016-06-02 15:43:01

标签: r amazon-web-services mechanicalturk

我对MTurkR很新。我试图告诉MTurkR我的AWS_ACCESS_KEY_ID和AWS_SECRET_ACCESS_KEY是什么。我尝试了下面的代码但使用了我的真实密钥而不是假冒密钥1和假密钥2文本:

request(operation, GETparameters = NULL,
    keypair = c(Sys.getenv("fakekey1"),  
                Sys.getenv("fakekey2")),
    browser = getOption('MTurkR.browser', FALSE),
    log.requests = getOption('MTurkR.log', TRUE),
    sandbox = getOption('MTurkR.sandbox', FALSE),
    verbose = getOption('MTurkR.verbose', TRUE),
    validation.test = getOption('MTurkR.test', FALSE),
    service = "AWSMechanicalTurkRequester",
    version = NULL)

我收到此错误: 请求中的错误(操作,GET参数= NULL,密钥对= c(Sys.getenv(“fakekey1”),:   没有提供密钥对。 请设置环境变量:AWS_ACCESS_KEY_ID和AWS_SECRET_ACCESS_KEY

1 个答案:

答案 0 :(得分:1)

设置凭据的最佳方法是使用环境变量(如错误消息所示,并如in the installation instructions所述)。具体来说,通过执行以下操作来启动脚本:

Sys.setenv(AWS_ACCESS_KEY_ID = "yourkey")
Sys.setenv(AWS_SECRET_ACCESS_KEY = "yoursecret")
library("MTurkR")

然后在该页面上运行代码。 request()将自动从这些环境变量中检索您的密钥对。

如果由于某种原因您不想设置环境变量,您可以通过任何MTurkR函数的keypair传递...参数,例如:

AccountBalance(keypair = c("yourkey", "yoursecret"))

如果您是R的新手,并且不熟悉在函数中使用...参数,则可以看到an explanation of it here

最后,request()低级功能,因此可能没有理由直接调用它。