我正在寻找将csv文件发送到数据库的方法,因为有人使用VBA
代码(VBA
的api调用有80个字符limit来发布该文件,因此他们需要将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)