0

我正在尝试提供一个 R 函数作为我使用https://blogs.msdn.microsoft.com/mlserver/2018/07/26/dockerizing-r-and-python-web-services/的Web 服务一个参考。

我相应地更改了我的函数,以便它应该接受一个数据框。我想通过 curl 使用 Web 服务。如何通过 curl 将数据框传递给 publishService 函数?

我尝试将数据帧作为 JSON 发送,以便 curl POST 应将其作为字符串接受,但它不接受。

library(mrsdeploy)
library(jsonlite)
manualTransmission <- function(hp, wt) { 
     hp <- jsonlite::fromJSON(hp)
     wt <- jsonlite::fromJSON(wt)
     c(hp[1,1],wt[1,1]) 
}
remoteLogin("http://localhost:12800", username = "admin", password = 
"Microsoft@2018", session = FALSE)
api <- publishService("ManualTransmissionService", code = 
manualTransmission, inputs = list(hp = "character", wt = "character"), 
outputs = list(answer = "vector"), v = "1.0.0") 

命令:

curl --header "Content-Type: application/json" --header "Authorization: Bearer <accesstoken>" --request POST --data "{\"hp\": \"[{\"hp_col\": 5}]\",\"wt\": \"[{\"wt_col\": 5}]\"}" http://localhost:12800/api/ManualTransmissionService/1.0.0 
4

0 回答 0