我希望将 csv 文件发送到数据库,因为有人使用他们的VBA
代码发布文件(他们的 api 调用VBA
有 80 个字符的限制,所以他们需要将 csv 上传到服务器供我解析和检查)
为此,我的目标是使用plumber
和POST
请求。我对如何构建 api 来做到这一点的知识有点有限。下面是一个粗略的例子,说明我如何看待它。这甚至可能与plumber
吗?
# api_main.R
library(plumber)
#* @awesomeAPI Simple API to upload csv
#* Return status on received csv
#* @param req
#* @post /upload
function(req) {
df <- read.csv(req$body)
if(all(c("A", "B", "C", "D") %in% names(df))){
return(data.frame(msg = "Not all columns available", status = 418))
} else {
# upload data to DB here
return(data.frame(msg = "OK", status = 200))
}
}
启动服务:
plumber::plumb("api_main.R")$run(port = 5762)