WebApi调用用提示404

Posted C。C

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了WebApi调用用提示404相关的知识,希望对你有一定的参考价值。

WebApi调用用提示404

现象是一个webapi接口,有两个string类型参数,通过post方式调用,一致提示404未找到资源,通过postman工具测试

没有问题,证明可接口正常,那就只能找调用的问题。

 

分析了,调用参数为自定义类的weiapi没有问题,然后原因就可能再参数这里了。

 

经过一番研究,string类型参数的webapi,会自动认为是query类型,这个类型意思是表示从uri位置获取参数,然而我得

post调用是把参数序列化为json,写入请求流里,写入请求六意味着参数传到了body位置,所以服务端找不到参数。

 

还是用post方式,把代码改改,参数拼接在url后面  ***?a=1&b=2

这样就通了,证明了,string类型参数,是从url位置获取。

这个跟webservice有区别,webservice的参数全部默认是放在body里,所以我以前写的针对webservice调用的post当时没有区分参数位置,

一股脑写入body。

然后把webapi参数改为复杂类,用老方式,也能调用了。

参数得类型有很多种,可以放url   header  body   ,需要了解的自行研究下。

以上是关于WebApi调用用提示404的主要内容,如果未能解决你的问题,请参考以下文章

404 在 CORS 请求中返回,来自 Angular 服务的一些 Web api 调用

在 C# 中调用 web api

Web API 通过 URL 加载,但从 Angular 脚本中获取错误 404

c#webapi怎么调用接口并传参数

如何在asp.net核心中从客户端调用web api方法?

调用 web api 时 $http 调用两次