oauth - 登录 shopify 后 OAuth 请求重定向到管理仪表板
问题描述
我创建了一个 shopify 应用程序来读取商店数据,如类别名称、产品名称等。遵循本指南https://help.shopify.com/api/getting-started/authentication/oauth
我已经用 python 编写了脚本来发出 OAUTH 请求以在 shopify 商店中安装我的应用程序。我在 OAuth 请求期间使用 api 密钥、密钥,并且还在合作伙伴仪表板的应用程序中设置了应用程序 url、列入白名单的重定向 url。这里发生2种情况:
第一种情况是当商店所有者登录到商店时,OAuth 请求被授予并重定向到应用程序安装页面,安装后重定向到通过 OAuth 请求 URL 传递的 redirect_url。
第二种情况是当商店所有者未登录商店时,OAuth 请求重定向到商店登录页面,并且在登录页面重定向到商店的管理仪表板后。不会重定向到应用程序安装页面。
第一种情况没有问题。我一直在尝试解决第二种情况。我想在登录商店后重定向到应用程序安装页面。
除了我之外,其他 shopify 开发人员也面临着这个问题。这是 shopify 论坛中未回答的相同问题的其他 2 个链接。
我尝试过的:
我正在尝试在 django 中做到这一点。这是我试图将用户重定向到shopify商店以进行授权的代码。
def redirect_to_shopify_store(request):
redirect_url = "https://" + store_name + ".myshopify.com/admin/oauth/authorize?client_id=" + api_key
redirect_url += "&scope=read_orders, write_checkouts, read_themes, write_themes, read_products, write_products, unauthenticated_read_product_listings, read_product_listings, read_collection_listings"
redirect_url += "&redirect_uri=" + python_app_base_url + "/get_shopify_access_token/"
redirect(redirect_url)
这是我尝试接收 shopify 访问令牌的代码:
def get_shopify_access_token(request):
code = request.GET.get('code')
client_id = shopify_config['client_id']
request_url = "https://{store_name}.myshopify.com/admin/oauth/access_token?client_id={client_id}".format(
store_name=store_name, client_id=client_id
)
request_url += "&client_secret=" + shopify_config['client_secret']
request_url += "&code=" + code
response = requests.post(request_url)
shopify_access_token = response.json()['access_token']
print("shopify_access_token")
print(shopify_access_token)
redirect('success_page_url')
如果我像以下 URL 一样重定向
https://{store_name}.myshopify.com/admin/auth/login?redirect=oauth/authorize?client_id, access_scope
我得到 access_scope 缺失错误并被重定向到以下 URL:
https://{store_name}.myshopify.com/admin/oauth/authorize?client_id
无法确定缺少 accsess_scope 参数的原因。
shopify 专家的任何帮助将不胜感激。
解决方案
推荐阅读
- vb.net - 乘法图
- delphi - 如何检测文件夹更改何时完成?
- c - 如何在小端机器上返回 351351 int?
- bash - 如何在 If 语句中比较 shell 中的 2 个布尔变量
- c++ - C++ 评估它不应该的表达式
- javascript - 获取距离测量值并添加推荐
- angular - 如何在规范测试中模拟 ngOnInit() 中的路由 queryParams
- c# - 如何让 Hololens 全息图锚定在物理环境中?
- javascript - Youtube 缩略图和实际视频 CSS 修复 (WordPress)
- wagtail - 消除
来自 wagtail 的富文本字段的标记