[英]R Plumber API - programmatically specify JSON schema for request
我正在嘗試在 R 中構建一個管道工 API。從文檔中的這個示例開始......
pr() %>%
pr_post("/echo", function(req, res) {
if (is.null(req$body)) return("No input")
list(
input = req$body
)
}) %>%
pr_run(port = 8080)
API 啟動正常。 但是,我希望我的處理程序 function 在請求正文中使用 JSON 作為輸入。
是否可以以編程方式定義 JSON 模式,以便將其填充為 API 的 swagger 文檔中的示例?
謝謝。
看起來這篇文章Plumber: getting request body/schema in UI有解決方案。
這是(除非有人能告訴我這是不好的做法)我一直在尋找的例子......
v <- data.frame(a = c(2, 3),
b = c(3, 4))
pr() %>%
pr_post("/add_up", function(input = v) {
input <- input[[1]]
return(list(rowSums(input)))
}) %>%
pr_run(port = 8080)
這給出了 swagger 文檔中的以下示例 JSON...
{
"input": [
[
{
"a": 2,
"b": 3
},
{
"a": 3,
"b": 4
}
]
]
}
...並返回以下響應...
[
[
5,
7
]
]
誰能提供任何改進? 如果可能的話,最好從 JSON 模式中刪除“輸入”。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.