Каков синтаксис для Url/Uri в GraphQL HotChocolate?
Я пишу запрос GraphQL с параметром, который имеет тип Uri
в C#. При вводе значения " http://dotnetperls.com/" он сообщает, что тип указан неверно. Кто-нибудь знает, в каком формате это должно быть, чтобы соответствовать GraphQL?
1 ответ
Решение
Список скалярных типов HotChocolate содержит UrlType, который отображается на Uri. Объявление вашего аргумента типа UrlType должно быть достаточно. В зависимости от версии HotChocolate, которую вы используете, платформа может автоматически ввести аргумент, в противном случае вы можете переопределить тип вашего аргумента в конфигурации QueryType:
public class QueryType: ObjectType<Query>
{
protected override void Configure(IObjectTypeDescriptor<Query> descriptor)
{
[...]
descriptor.Field(t => t.GetMyEntity(default))
.Argument("myArgument", a => a.Type<NonNullType<UrlType>>());
[...]
}
}
Изменить: ниже версии 9.0.0 вам нужно зарегистрировать расширенные скалярные типы, как показано здесь.