如何使用 apollo graphql 处理授权标头?
Posted
技术标签:
【中文标题】如何使用 apollo graphql 处理授权标头?【英文标题】:How to handle authorization header with apollo graphql? 【发布时间】:2020-02-22 21:26:42 【问题描述】:Apollo graphql 请求遵循接受 http 标头的初始化函数。 我想将身份验证令牌附加到授权标头。
用户可以登录/注销并切换帐户。 我是否应该在任何身份验证更改时使用令牌标头执行 init 函数? 还是有更好的办法?
【问题讨论】:
【参考方案1】:你可以做这样的功能
const createApolloClient = (authToken) =>
return new ApolloClient(
link: new HttpLink(
uri: 'your url',
headers:
Authorization: `Bearer $authToken`
),
cache: new InMemoryCache(),
);
;
然后这样称呼它
var idToken = "abc" //fetch and store your token here
const client = createApolloClient(idToken);
return (
<ApolloProvider client=client>
<div>
</div>
</ApolloProvider>
【讨论】:
如何在运行时删除授权标头以上是关于如何使用 apollo graphql 处理授权标头?的主要内容,如果未能解决你的问题,请参考以下文章
基于角色的授权 Django/Graphql/Apollo/Vue
前端的用户角色/权限 - React / GraphQL / Apollo Client
如何使用 React-Apollo 处理 GraphQL 错误?
如何调试 nuxt-apollo 服务器端 graphql 请求