重载api端点[重复]
Posted
技术标签:
【中文标题】重载api端点[重复]【英文标题】:Overloading an api endpoint [duplicate] 【发布时间】:2021-06-07 16:20:26 【问题描述】:是否可以重载 api 端点?
我希望端点/路由完全相同,但输入参数不同。比如……
[HttpPost]
[Route("change-xxx")]
public async Task<IHttpActionResult> ChangeXxx(MyCPModel1 request)
还有……
[HttpPost]
[Route("change-xxx")]
public async Task<IHttpActionResult> ChangeXxx(MyCPModel2 request)
当我以这种方式尝试时,我收到“找到与请求匹配的多个操作”错误。
【问题讨论】:
感谢@gunr2171,但这是使用 MVC。我确定这是一个类似的解决方案吗? 请查看链接帖子上的 cmets,其中说即使该问题早在 2009 年就被问到,但它今天仍然适用于每个版本的 ASP.Net。 【参考方案1】:简答 - 不,不可能重载 Web API 端点。您不能有两个端点具有完全相同的路径和动词。错误消息“找到与请求匹配的多个操作”证实了这一点。
【讨论】:
以上是关于重载api端点[重复]的主要内容,如果未能解决你的问题,请参考以下文章
启用 CORS 不适用于 Spotify Web API [重复]
可以 ping,但不能连接到来自同一网络的另一台机器上托管的端点 [重复]
如何从同一个类中的另一个构造函数调用抽象类的构造函数(方法重载)[重复]