使用aspnetcore 3.1nugetGrpc.AspNetCore包,我成功地使 gRPC 服务与标准 asp.net 控制器一起成功运行,如本教程中所述。
不过,我想将 gRPC 服务绑定到特定端口(例如 5001),如果可能的话最好通过配置而不是代码。这是因为我想限制 gRPC 服务的公开方式。
我最接近的是RequireHost在映射端点时使用的:
// Startup.cs
public void Configure(IApplicationBuilder app)
{
// ...
app.useEndpoints(endpoints =>
{
endpoints.MapGrpcService<MyService>()
.RequireHost("0.0.0.0:5001");
});
}
Run Code Online (Sandbox Code Playgroud)
这似乎符合我的要求,但我找不到任何有关它的文档,并且它需要在每个服务的代码中进行配置。也许有更好的方法?