authentication - 如何使用 apollo graphql 处理授权标头?
问题描述
Apollo graphql 请求遵循接受 http 标头的初始化函数。
我想将身份验证令牌附加到 Authorization 标头。
用户可以登录/注销和切换帐户。
我是否应该在任何身份验证更改时使用令牌标头执行 init 函数?
或者,还有更好的方法?
解决方案
你可以做这样的功能
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>
推荐阅读
- shinydashboard - R Shiny:shinydashboardPlus appButton inputId
- pyspark - 如何循环遍历数据框并将数组添加到每一行
- ubuntu - 如何在 ubuntu 上安装 heroku?
- c# - 在我看来,是否有必要引用 ApplePay.js?如果是,比怎么样?
- amazon-web-services - 在 Elastic Beanstalk 实例上安装 ffmpegthumbnalier
- c# - c# SetForegroundWindow 和 SendMessageTimeout
- razor - 当用户无权查看 Umbraco 页面时如何通过 XSLT 隐藏元素
- php - 调用 isSumbitted() 和 isValid() 导致“未定义方法”错误
- node.js - npm 错误!使用 wsl 将 npm 模块安装到 Windows 10 时出现错误 -13
- ios - iPad 上的快照模式视图控制器出现非圆角