Asp.net-Core
不知道是否可以在 Hot Chocolate for ASP.NET Core 中使用多個模式
我正在嘗試在 ASP.NET Core 上使用 Hot Chocolate 庫開始開發 GraphQL API,但我不知道如何為不同的端點使用不同的模式。我知道模式拼接,但這不是我想要的。我想實現的,就是能夠從不同的端點查詢不同的類型,比如我想從localhost:5000/graphapi查詢使用者數據,從localhost:5000/admin/graphapi查詢不同的admin數據是的,可以為此創建單獨的伺服器,但我想擁有單體 API。
這個很簡單,
首先為您的模式設置 GraphQL 配置:
public void ConfigureServices(IServiceCollection services) { services .AddRouting() services .AddGraphQLServer() .AddQueryType<Query>() .AddMutationType<Mutation>(); services .AddGraphQLServer("adminSchema") .AddQueryType<QueryAdmin>() .AddMutationType<MutationAdmin>(); }接下來我們需要配置模式到具體路由的映射:
public void Configure(IApplicationBuilder app, IWebHostEnvironment env) { app .UseRouting() .UseEndpoints(endpoints => { endpoints.MapGraphQL(); endpoints.MapGraphQL("/admin/graphql", schemaName: "adminSchema"); }); }完畢。