首页 文章

尝试创建Shopify access_token时生成错误

提问于
浏览
0

我正在尝试在Shopify商店上安装我们的公共应用程序,并且重定向URL中返回的 code 用于生成访问令牌 . 但我们调用Shopify API生成访问令牌总是会导致以下错误:

“oauth错误无效请求未找到或已使用授权代码”

随后的流程:Shopify显示点击以接受我们的应用程序的安装后,他将被重定向到以下URL:

http://mywebsite.com/?code=d119551fb7cdd820012c6b2cb7b12495&hmac=10976937c09a1f1e3db6275d12cae8fbd43415a6d5b031ec14a70128b8fe9dfe&shop=<retailer>.myshopify.com&state=11122777&timestamp=1478065253

mywebiste.com是我们的网站,它与Shopify商店集成,并通过访问令牌访问各种API .myshopify.com是实际的Shopify商店 .

这个重定向的网址由Shopify商店所有者通过电子邮件提供给我们 .

此URL包含 code 参数 . 我们使用此 code 参数并使用另一个Shopify API生成访问令牌 - 使用以下URL: https://<retailer>.myshopify.com/admin/oauth/access_token 并传递以下3个POST参数:client_id,client_secret和code

我们还没有编写用于创建访问令牌的程序,而是通过POSTMAN执行此过程来生成访问令牌,这是一个手动过程 . 我们计划编写脚本,该脚本将自动解析重定向的URL并生成访问令牌,但截至目前我们正在手动执行此操作 .

让我知道您需要的任何其他细节,我会提供 . 我在Shopify论坛上创建了类似的请求,但他们也建议将这个问题放在StackOverflow上供专家查看 .

谢谢!沙拉德

3 回答

  • 0

    Shopify Shop所有者通过电子邮件向我们提供了此重定向的网址 .

    这听起来像是Shopify提供的_1174819_ Shopify提供给你的时间到期了 . 您可以找到有关创建开发商店的说明here .

  • 0

    为什么重定向URL是在电子邮件中提供的?

    授权码的使用寿命有限,只能使用一次 . 授权代码应在发布后立即交换访问令牌 .

    我建议您再次阅读OAuth文档,因为您当前的流程似乎与文档中描述的内容不符 .

    https://help.shopify.com/api/getting-started/authentication/oauth

  • 1

    我们决定与我们的客户合作,并确定我们的客户在安装应用程序后重定向到我们的服务器时,点击浏览器上的后退按钮 . 此操作将我们的客户带回其管理页面,实际上将生成的代码呈现为已使用 . 因此,实际上在我们可以使用生成访问令牌之前已经使用了代码 .

    我们阻止用户单击浏览器上的后退按钮,并使用在第一个实例中生成的代码来生成访问令牌,并且它有效 . 感谢Jamie您提供的有关“代码有生命周期并且只能使用一次”的输入 - 这让我有所思考 .

    此致,Sharad

相关问题