【问题标题】:Unable to make Navigation (polaris) component work with new shopify session system无法使导航(北极星)组件与新的 shopify 会话系统一起使用
【发布时间】:2021-05-27 08:17:21
【问题描述】:

我一直在尝试重新设计应用以使用新的会话身份验证系统。 一切似乎都正常,但是我无法成功使用Navigation (polaris) 组件。

假设我有这样的事情:

<Navigation.Section
    items={[
        {
            url : '/faq',
            label : translations.faq,
            icon : HintMajor
        }
    ]}
/>

如果我只输入/faq,我将无法访问该路线。我被重定向到/auth 并且显然出现错误。

我设法使我的路线工作的唯一方法是:

  1. 在每个网址中添加商店查询,如下所示:
// ...
url : '/faq?shop=${shop}',
// ...
  1. 在我的 server.js 中手动添加所有需要的路由,而不使用 verifyRequest 中间件(这对我来说似乎不是一个好的选择)
// ...
router.get('/faq', handleRequest)
// ...

如果我做错了什么,有人可以解释一下吗? (我正在使用 repo 文档 https://github.com/Shopify/shopify-node-api/blob/main/docs/usage/customsessions.md 中显示的自定义 redis 存储管理我的 SESSION_STORAGE)

【问题讨论】:

    标签: shopify shopify-app polaris


    【解决方案1】:

    您是否不应该在您的应用程序路由中使用通配符,以便在您交付后端代码时它会这样做,并将身份验证留给在您的标头中包含令牌?没有令牌和任何经过身份验证的请求,然后您直接登录?

    【讨论】:

    • 在教程和包仓库中,我们有这样的东西:router.get('(.*)', verifyRequest(), handleRequest) // Everything else must have sessions 但在我的情况下,verifyRequest 导致了问题(不应该是这种情况)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-07-05
    • 1970-01-01
    • 2022-06-13
    • 1970-01-01
    • 2021-07-25
    • 2021-12-04
    • 1970-01-01
    相关资源
    最近更新 更多