我有使用基于属性的路由的API服务,我需要 根据部署位置在不同的基本前缀下部署服务,并且基本前缀应是可配置的。
例如
部署A-基本前缀“ abccompany / api” ,API访问端点为http://[host]/abccompany/api/Todo
部署B-基本前缀“ xyzcompany / api” ,API访问端点为http://[host]/xyzcompany/api/Todo
部署C-基本前缀“ / api” ,API访问端点为http://[host]/api/Todo
部署D-基本前缀“ / abcapp-api” ,API访问端点为http://[host]/abcapp-api/Todo
我尝试使用IApplicationBuilder.UsePathBase(),它可以正常工作,但是API也可以通过默认路由访问。我想将API访问权限仅限制为基本前缀路由。
示例:如果将pathbase设置为“ abc / api”,则http://[host]/abc/api/Todo和http://[host]/Todo路由可访问API。我希望只能通过http://[host]/abc/api/Todo路线访问它,有什么建议吗?
这是API控制器的虚拟示例代码。
<nodes>
<node id="4165094897" lat="41.0492396" lon="29.0260049" version="1">
<tag k="name" v="Adnan Yeri"/>
<tag k="amenity" v="cafe"/>
<tag k="wheelchair" v="limited"/>
</node>
<node id="4165094899" lat="41.0492902" lon="29.0258856" version="1">
<tag k="name" v="Piano Restaurant Cafe"/>
<tag k="wheelchair" v="limited"/>
</node>
<node id="4165094900" lat="41.0493468" lon="29.0258547" version="1">
<tag k="name" v="28 Black"/>
<tag k="shop" v="yes"/>
<tag k="amenity" v="restaurant"/>
</node>
</nodes>