Как установить постоянные переменные при создании пакетов R?

Мы строим пакет в R для нашего сервиса (robo-advisor здесь, в Бразилии), и мы все время отправляем запросы на наш внешний API внутри наших функций.

Поскольку в первый раз мы создаем пакет, у нас есть несколько вопросов.: (

Когда мы будем использовать наш пакет для запуска некоторых скриптов, нам потребуется некоторая информация как api_path, login, password.

Как мы размещаем эту информацию внутри нашего пакета?

Вот реальный пример:

get_asset_daily <- function(asset_id) {
    api_path <- "https://api.verios.com.br"

    url <- paste0(api_path, "/assets/", asset_id, "/dailies?asc=d")
    data <- fromJSON(url)
    data
}

Иногда мы используем версию API staging, и нам приходится постоянно переключаться между путями. Как мы можем назвать это внутри нашей функции?

Должна ли мы установить глобальную переменную окружения, переменную среды пакета, просто определить api_path в наших сценариях или файл конфигурации пакета?

Как мы это делаем?

Спасибо за вашу помощь заранее.

Ана

Ответ 1

Один подход заключается в использовании интерфейса параметров R. Создайте файл zzz.r в каталоге R (это обычное имя для этого файла) со следующим:

.onLoad <- function(libname, pkgname) {
    options(api_path='...', username='name', password='pwd')

}

Это установит эти параметры, когда пакет будет загружен в память.