Как настроить пользовательскую конечную точку GraphQL?

Недавно начал внедрять GraphQL в проект.net core 3.1. Первоначально началось с GraphQL.NET, по умолчанию конечная точка которого - https://localhost:44330/graphql. В конце концов я удалил его и решил использовать Hot Chocolate, который по умолчанию использует для конечной точки просто https://localhost:44330/. Я рыскал по Интернету в поисках ответов, но пока ничего не добился. Как я могу настроить конечную точку как (например:) https://localhost:44330/newname? Я думаю, что это можно сделать где-нибудь в app.UseGraphQL(), но я ничего не нашел. Любая помощь была бы замечательной.


Хорошо, я обнаружил настройку, которую полностью упустил из виду: UseGraphQL имеет две перегрузки, и первая - "PathString path".

app.UseGraphQL("/ новое имя")

Надеюсь, это хотя бы поможет другому

1 ответ

Первый шаг: вам нужно добавить этот код в свою клиентскую функцию GraphQL:

public class MyGraphqlClient
{
    public const string GraphqlAddress = "https://localhost:44330/newname/";

    private readonly HttpClient _httpClient;

    public MyGraphqlClient(HttpClient httpClient)
    {
        _httpClient = httpClient;
    }

    //...
}

Затем нужно зарегистрировать его в "Startup.cs" после "Services.AddMvc()":

public void ConfigureServices(IServiceCollection services)
    {

        Services.AddMvc()

        services.AddHttpClient<MyGraphqlClient>(x => x.BaseAddress = new Uri(MyGraphqlClient.GraphqlAddress));}
Другие вопросы по тегам