Не удается аутентифицировать BigQuery с помощью R в пакете bigrquery - PullRequest
0 голосов
/ 10 декабря 2018

Я пытаюсь использовать set_service_token в пакете bigrquery для неинтерактивной аутентификации.

Вот мой код:

library(bigrquery)
set_service_token("client_secret.json")

Но он продолжал показывать ошибкусообщение ниже:

Ошибка в read_input (файл):файл должен быть соединением, необработанным вектором или путем к файлу

Однако, когда я просто читаю путь JSON, он работает:

lapply(fromJSON("client_secret.json"), names)

$ `Установлено`[1] "client_id" "project_id" "auth_uri" "token_uri" "auth_provider_x509_cert_url" "client_secret" "redirect_uris"

Может кто-нибудь помочь мне с этим?Большое спасибо!

1 Ответ

0 голосов
/ 10 декабря 2018

Похоже, ваш JSON-файл находится в текущем каталоге, но вам нужен полный путь для предоставления токена JSON-файла.Попробуйте это:

json_path <- paste(getwd(), "/client_secret.json", sep="")
set_service_token(json_path)

Если это не сработает, вы можете попробовать это, используя переменные окружения, например:

Sys.setenv("CLIENT_SECRET_FILE" = json_path)
set_service_token(Sys.getenv('CLIENT_SECRET_FILE'))

Или попробуйте предоставить содержимое JSON, например:это:

set_service_token(toJSON(fromJSON("client_secret.json"), pretty = TRUE))

Вы также можете попробовать использовать gar_auth_service :

library(googleAuthR)
gar_auth_service(
  json_file = "client_secret.json" # or better use the full path instead
)

Надеюсь, это сработает.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...