【问题标题】:Can I host different ServiceStack services at different URLs我可以在不同的 URL 上托管不同的 ServiceStack 服务吗
【发布时间】:2015-03-21 16:59:48
【问题描述】:

configuring ServiceStack 时,我必须指定我的服务可用的位置(URL)。例如。与 WebApi 并行运行时:

<location path="svc">
 <system.web>
   <httpHandlers>
     <add path="*" type="ServiceStack..." verb="*"/>
   </httpHandlers>
 </system.web>

现在我所有基于 ServiceStack 的服务都可以在 http://server/webapp/svc/{route} 获得。

在阅读了关于 modularizing services 插件的页面后,我想知道:是否可以在不同的 URL 注册每个插件中包含的服务(例如,改变每个插件 URL 的 /svc/ 段) ?

【问题讨论】:

    标签: web-services configuration servicestack


    【解决方案1】:

    请参阅 Hello World 示例中的配置 ServiceStack 部分,了解如何注册ServiceStack to run at a custom path

    如果您尝试使用 MVC 运行 ServiceStack,您还需要阅读 README section and answer


    (回应评论)

    每个主机应用程序中只有 1 个 ServiceStack AppHost,它只能托管在 1 个根 //custompath 上。所有其他路由配置都从该/path 映射。因此,如果您在 /svc 注册它,您将无法从不同的挂载点注册新的 ServiceStack AppHost,例如/svc2。如果您在根路径 / 托管它,那么您的个人路由可以托管在 /svc/route1/svc/route2 等。但是您将无法与另一个 Web fx 并排托管它(例如 MVC 或WebAPI)。

    【讨论】:

    • 对不起,我的问题似乎不清楚。我成功地与 WebAPI 并排运行 ServiceStack(使用 /api/... 用于 WebApi 和 /svc/... 用于 ServiceStack)。但是在将ServiceStack服务分组为插件时,我可以在/svc1/...注册一个插件中包含的服务,在/svc2/...注册另一个插件中包含的服务(例如)。
    • 每个宿主应用程序中只有 1 个 ServiceStack AppHost,只能托管在 1 个根 / 或 /custompath 上。所有其他路由配置都从该 /path 映射。因此,如果您在 /svc 注册它,您将无法从不同的挂载点注册新的 ServiceStack AppHost,例如/svc2。如果您将其托管在根路径 /,那么您的个人路由可以托管在 /svc/route1/svc/route2 等。但是您将无法将它与另一个 web fx 并排托管(例如 MVC 或WebAPI)。
    猜你喜欢
    • 1970-01-01
    • 2013-03-17
    • 2021-12-05
    • 1970-01-01
    • 2013-07-07
    • 1970-01-01
    • 2012-06-21
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多