![](/img/trans.png)
[英]Uplod images to azure blob storage - Works locally, fails when deployed
[英]Attribute Route with constraint works locally but fails when deployed
我有一个简单的属性路由,其中包含三个不同的路径段:
[HttpGet]
[GET("v{version:int}/{category}/{service}")]
public async Task<HttpResponseMessage> RouteMessage(
string category, string service, int version = 1)
{
}
虽然在本地开发时路由有效,但是当我将其部署到IIS服务器时路由失败(404)。
失败的网址:
http://example.com/v1/search/products?client=test
我确定这不是IIS问题,因为我仍然可以使用非属性路由来访问服务(请注意,即使v1
不是int,参数本身也具有默认值):
http://example.com/api/route/?version=v1&category=search&service=products&client=test
我已经安装了Route Debugging,并且正如预期的那样,即使应该,我的路由也不匹配属性route。
应用程序相对路径列为~/v1/search/products
,应与网址格式v{version}/{category}/{service}
匹配(“ version”也正确列出并带有int路由约束)。
感谢@Kiran Challa,我意识到,尽管类似,但是内置的WebAPI属性路由与AttributeRouting.WebApi
并不相同。 我切换到内置路由,现在一切正常。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.