首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何将oauth_token和client_id发送到GraphQL客户端端点的请求体中

如何将oauth_token和client_id发送到GraphQL客户端端点的请求体中
EN

Stack Overflow用户
提问于 2018-06-29 11:05:03
回答 3查看 6.6K关注 0票数 1

你好,朋友们,我想在oauth_token客户端的请求体中传递GraphQL和client_id。所以我如何传递它们,因为GraphQLRequest只有三个字段(即查询、变量和OperationName)。请建议一下。

代码语言:javascript
复制
using GraphQL.Client;

var heroRequest = new GraphQLRequest{ Query = Query };
var graphQLClient = new GraphQLClient("URL");

var  graphQLResponse = await graphQLClient.PostAsync(heroRequest);
EN

回答 3

Stack Overflow用户

发布于 2018-10-15 08:13:12

可以使用来自DefaultRequestHeadersGraphQLClient.将授权(或任何其他参数)添加到标头中

代码语言:javascript
复制
var graphClient = new GraphQLClient("https://api.github.com/graphql");
graphClient.DefaultRequestHeaders.Add("Authorization", $"bearer {ApiKey}");

var request = new GraphQLRequest
{
    Query = @"query { viewer { login } }"
};

var test = await graphClient.PostAsync(request);

在这里,您可以从HttpClient:Setting Authorization Header of HttpClient找到更多关于该HttpClient:Setting Authorization Header of HttpClient的详细信息。

此外,在git上创建了一个相关的问题。

https://github.com/graphql-dotnet/graphql-client/issues/32

票数 4
EN

Stack Overflow用户

发布于 2021-08-11 12:51:41

使用GraphQLHttpClient而不是GraphQLClient

示例:

代码语言:javascript
复制
public class DemoController : Controller
{
    private readonly GraphQLHttpClient _client;
    
    public DemoController(GraphQLHttpClient client)
    {
        _client = client;
    }

    public async Task<ActionResult> YourMethod()
    {
        _client.HttpClient.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("JWT", yourToken);
        var query = new GraphQLRequest
        {
            Query = "query{......}"
        }
        ...
    }
}

当然,您必须在注册您的GraphQLHttpClient在Startup

示例:

代码语言:javascript
复制
services.AddScoped(s => new GraphQLHttpClient(Configuration["YourGraphQLUri", new NewtonsoftJsonSerializer()));
票数 4
EN

Stack Overflow用户

发布于 2022-10-17 05:13:20

代码语言:javascript
复制
var graphQLClient = new GraphQLHttpClient("localhost/graphql", new NewtonsoftJsonSerializer()); 
graphQLClient.HttpClient.DefaultRequestHeaders.Add("Authorization", "Bearer ????");
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51100305

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档