如何在没有会话的情况下在 Shopify 应用程序上生成访问令牌

时间:2021-01-13 12:27:29

标签: shopify shopify-app

我开发了一个 Shopify 应用,并为此使用了基于 cookie 的身份验证。

示例代码

server.use(session({ secure: true, sameSite: 'none' }, server));
server.use(
    createShopifyAuth({
      apiKey: SHOPIFY_API_KEY,
      secret: SHOPIFY_API_SECRET_KEY,
      scopes: ['read_products', 'write_products', 'read_themes', 'write_themes', 'read_script_tags', 'write_script_tags'],
      async afterAuth(ctx) {
        const { shop, accessToken } = ctx.session;
        
        ctx.cookies.set('shopOrigin', shop, {
          httpOnly: false,
          secure: true,
          sameSite: 'none'
        });
        
       // await login(ctx, accessToken, shop);
       // await getScriptTag(ctx, accessToken, shop);
      },
    }),
)

现在,我的问题是它在某些浏览器上无法解决 cookies 问题。

如何在不使用 cookie 的情况下使用 createShopifyAuth 生成访问令牌。如果我评论 server.use(session({ secure: true, sameSite: 'none' }, server)); 它不再起作用。

1 个答案:

答案 0 :(得分:0)

我认为您需要检查新的 JWT 身份验证,以在 Shopify 应用中进行无 cookie 身份验证。

Shopify Wiki Link