在 Unix 服务器上的 R 脚本中使用包 RAdwords rjson 中的错误
Using the package RAdwords in an R script on a Unix server Error in rjson
我有以下脚本,当我在我的本地 PC 上 运行 时,它工作得很好:
library(RAdwords)
autX <- doAuth()
data <- getData(clientCustomerId='xxx-xxx-xxxx',
google_auth=autx
)
然而,当我尝试在我的 Unix 服务器上 运行 完全相同的脚本时,我收到了这个错误消息:
Error in rjson::fromJSON(RCurl::postForm("https://accounts.google.com/o/oauth2/token", :
STRING_ELT() can only be applied to a 'character vector', not a 'raw'
问题:可能是什么原因,我该如何解决?
顺便说一句:
- 我确实将文件
.gitgnore
和 .google.auth.RData
从本地 PC 上的文件夹复制到我服务器上的目录中,我已经在其中进行了此身份验证。
- 如果我只是单独输入 doAuth(),我会 不会 收到错误消息。
问题:
getData()
调用函数 refreshToken()
更新 Google AdWords API 的身份验证令牌。在函数 refreshToken
中,RCurl 命令 returns 原始数据文件而不是字符文件格式。 rjson::fromJSON
returns 通过添加 rawToChar()
解决的错误。
解决方案:
我创建了一个函数补丁并更新了Github开发版RAdwords。
您可以安装新的软件包版本:
require(devtools)
install_github('jburkhardt/RAdwords')
我有以下脚本,当我在我的本地 PC 上 运行 时,它工作得很好:
library(RAdwords)
autX <- doAuth()
data <- getData(clientCustomerId='xxx-xxx-xxxx',
google_auth=autx
)
然而,当我尝试在我的 Unix 服务器上 运行 完全相同的脚本时,我收到了这个错误消息:
Error in rjson::fromJSON(RCurl::postForm("https://accounts.google.com/o/oauth2/token", :
STRING_ELT() can only be applied to a 'character vector', not a 'raw'
问题:可能是什么原因,我该如何解决?
顺便说一句:
- 我确实将文件
.gitgnore
和.google.auth.RData
从本地 PC 上的文件夹复制到我服务器上的目录中,我已经在其中进行了此身份验证。 - 如果我只是单独输入 doAuth(),我会 不会 收到错误消息。
问题:
getData()
调用函数 refreshToken()
更新 Google AdWords API 的身份验证令牌。在函数 refreshToken
中,RCurl 命令 returns 原始数据文件而不是字符文件格式。 rjson::fromJSON
returns 通过添加 rawToChar()
解决的错误。
解决方案:
我创建了一个函数补丁并更新了Github开发版RAdwords。
您可以安装新的软件包版本:
require(devtools)
install_github('jburkhardt/RAdwords')