如何在不同的URL基本前缀下运行asp.net核心api服务?

时间:2019-07-16 18:05:50

标签: asp.net-core

我有使用基于属性的路由的API服务,我需要 根据部署位置在不同的基本前缀下部署服务,并且基本前缀应是可配置的。

例如

我尝试使用IApplicationBuilder.UsePathBase(),它可以正常工作,但是API也可以通过默认路由访问。我想将API访问权限仅限制为基本前缀路由。

示例:如果将pathbase设置为“ abc / api”,则http://[host]/abc/api/Todohttp://[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>

0 个答案:

没有答案