You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

R语言中可否创建无参数plumber API?如何解决404报错问题?

plumber无参数API404问题解答

plumber完全支持开发无参数API,你遇到的404错误和接口是否要求传参没有关联,核心原因是请求方法和接口定义不匹配。
你当前代码里用@post /Test注解标记的是仅接受POST方法的接口:

  • 如果你是直接在浏览器地址栏输入接口地址访问,浏览器默认发起GET请求,无法匹配到你定义的POST接口,就会返回404状态码。

你可以根据自己的需求选以下任意一种方案修复:

方案1:将接口改为GET方法(适配直接浏览器访问场景)

如果你的接口不需要传递敏感参数、希望直接在浏览器输入地址就能访问,把@post改成@get即可,修正后完整代码:

library(plumber)

#* Test plumber of API with no parameters
#* @response default array with corresponding responses
#* @serializer unboxedJSON
#* @get /Test
function(){
  return("Hello World!")
}

部署后直接访问对应服务地址的/Test路径,无需传入任何参数即可拿到"Hello World!"的返回结果,返回数据框的写法逻辑完全一致,直接在函数里return对应数据框即可。

方案2:保留POST方法,用POST规则发起请求

如果你确实需要定义POST类型的无参数接口,不需要修改现有代码,注意不要直接通过浏览器地址栏访问,改用支持POST请求的工具调用即可,比如用curl调用的示例命令:

curl -X POST http://你的服务IP:端口/Test

调用时不需要携带任何请求参数、请求体,就能正常拿到返回结果。

额外注意:plumber默认的路径匹配区分大小写,/Test和/test会被识别为两个不同的接口,访问时注意路径拼写和注解里的定义完全一致。

内容的提问来源于stack exchange,提问作者QMan5

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.29 20:51:25