我正在尝试使用服务堆栈创建一个restful服务。如何配置我尝试创建的服务的终点?默认值为8080,我希望能够在同一主机上运行多个服务。
由于
答案 0 :(得分:2)
这取决于您使用ServiceStack的方式。 ServiceStack可以作为HttpModule包含在现有的ASP.NET Web应用程序中,也可以配置为自托管应用程序。
作为自托管应用程序,您可以在AppHost中指定HTTP侦听器配置时定义运行服务所需的端口:
public static void Main()
{
// Very simple self hosted console host
var appHost = new AppHost();
appHost.Init();
appHost.Start("http://*:8080/"); // Update the port number here, change 8080
Console.ReadKey();
}
在Windows上运行ServiceStack应用程序(有或没有MVC)时,在Mono平台(如Mac OS X)上使用IIS(或开发期间的Cassini / IISExpress),您将使用fastcgi-服务器(或开发期间的XSP)。在这种情况下,您可以这样配置服务器端口:
在开发中,您可以在项目设置中配置端口。
此步骤取决于您使用的Visual Studio版本,但它们都相似。
然后,您会看到与这些屏幕截图类似的选项,具体取决于您的版本。
如果您为开发配置了IISExpress,请将此屏幕截图中的项目URL中的51283更改为您需要的端口号。
如果您有Cassini, Visual Studio开发服务器,对于开发旧版Visual Studio ,请将此屏幕截图中显示63919的位置更改为您需要的端口号。
您将在托管服务器配置中配置端口号。对于IIS please see here,对于其他人,您需要参考他们的文档。
我希望这会有所帮助。
答案 1 :(得分:0)
使用单个配置,您可以使用相同的根URL创建多个服务。示例为http://localhost:8080/api/customers
和http://localhost:8080/api/vendors
。应用程序中的根级别端点是可配置的。例如,您可以使用任何路径代替/api
。请参阅servicestack中的this wiki page。