一个有点幼稚的问题,但现在我想创建一个更灵活的 web api 我刚刚阅读了有关 gqphql 的内容,接受查询字符串并返回包含结果的字符串是一个好习惯吗
任何使用 web api 和 graphql 的示例,我知道我可以使用 jws 之类的东西来保护查询,但我正在谈论这个想法和最佳实践
最佳答案
我是 Hot Chocolate 的贡献者。
为了让 GraphQL 与 Web API 并行运行,只需将以下包添加到您的项目中:
HotChocolate.AspNetCore
然后在启动的ConfigureService
方法中添加以下内容:
public void ConfigureServices(IServiceCollection services)
{
services.AddGraphQL(Schema.Create(c =>
{
c.RegisterQueryType<Query>();
}));
}
在配置部分只需添加UseGraphQL
public void Configure(IApplicationBuilder app, IHostingEnvironment env)
{
if (env.IsDevelopment())
{
app.UseDeveloperExceptionPage();
}
app.UseGraphQL();
}
GraphQL 只是另一个与您的 web api 中间件并排的中间件。
如果您使用的是 .Net Framework 而不是 .Net Core,那么您必须使用
HotChocolate.AspNetClassic
我们这里有 .Net Core 和 .Net Framework 的 StarWars 示例: https://github.com/ChilliCream/hotchocolate/tree/master/examples
您可以在此处找到文档: https://hotchocolate.io
希望对您有所帮助。
关于c# - 将 web api 与 graphql 结合使用的最佳实践,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41661086/