Как распределить API сантехника по нескольким файлам с помощью монтирования? - PullRequest
0 голосов
/ 27 февраля 2019

Я имею дело с большим API, и я хотел бы распределить его определение по нескольким файлам.Насколько я понял, читая документацию здесь, где в игру вступает метод "mounnt ()" от plumb

, я попробовал следующее:

iris.R:

#* Return a bit of iris
#* @get /iris
function(){
        head(iris)
}

В новом запущенном сеансе R:

irisAPI <- plumber::plumb("iris.R")
server <- plumber::plumber$new()
server$mount("/server", irisAPI)
server$run(host="0.0.0.0", port=8080, swagger= T)

Керлинг ничего не возвращает, swagger json пуст, отменяет и затем выполняет ту же самую вещь на канале irisAPI, а затемработает.

Это ошибка или я что-то упустил?

Спасибо,

1 Ответ

0 голосов
/ 08 августа 2019

У меня была такая же проблема.

Проблема была в версии сантехника.В CRAN-репозиториях существует 0.4.6, вам нужно скачать версию 0.5.0 (в документах, скажем так, но загруженная версия 0.4.7.9000) с github, используя библиотеку devtools на R.

https://github.com/trestletech/plumber/blob/master/NEWS.md https://cran.r -project.org / web / packages / plumber / index.html

Следующий код успешно работает для меня:

root <- plumber$new()

a <- plumber$new("controllers/a.R")
root$mount("/a", a)

b <- plumber$new("controllers/b.R")
root$mount("/b", b)

root$run(port = 8080, swagger=TRUE, debug= TRUE)

С уважением!

...