【问题标题】:Authentication in Sapper/Svelte in GraphQL APIGraphQL API 中 Sapper/Svelte 中的身份验证
【发布时间】:2020-09-21 00:32:39
【问题描述】:

我正在尝试使用利用 GraphQL API 的 Sapper+Svelte 制作 SSR 应用。 我检查了项目https://github.com/antony/sapper-authentication-demo 并阅读了官方文档,但我无法让它工作,而且我对它的制作方式感到困惑。 1) 正如我所见,Sapper 服务器应用程序使用 cookie 在 API 上进行身份验证。我觉得很奇怪,因为我希望它使用 JWT 访问密钥 2) 同样,无论我如何尝试将从服务器接收到的信息保存到会话中,然后在 Svelte 模板中获取它 - 它不会在会话中显示任何内容。

我是 Javascript 的新手,但在 Web 开发方面有丰富的经验,我了解 cookie/会话的工作方式,但由于某种原因,我不明白它在 experess/polka 中的工作方式以及为什么我不能将任何内容保存到会话中,然后阅读。

任何建议或帮助将不胜感激

【问题讨论】:

    标签: javascript single-page-application server-side-rendering svelte sapper


    【解决方案1】:

    既然是SSR那么你也需要通过令牌服务器端,否则你将无法使用令牌。

    所以在 server.js 中收到 cookie 后,您需要将其存储为会话 然后还使用 sapper 中间件,您将在其中将会话作为令牌返回

    sapper.middleware({
        session: (req, res) => {
            return ({
                token: req.session.token
            })
        }
    

    【讨论】:

      猜你喜欢
      • 2021-03-01
      • 2016-12-01
      • 2019-09-20
      • 2016-12-13
      • 2016-11-13
      • 1970-01-01
      • 1970-01-01
      • 2019-02-25
      相关资源
      最近更新 更多