首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从App调用Shopify API

从App调用Shopify API
EN

Stack Overflow用户
提问于 2017-12-18 18:26:39
回答 1查看 1.2K关注 0票数 2

目标

我想创建一个下面的应用程序。

商家为每个客户选择“顶级产品”。这些将存储在我的后端。

例如:

  • 客户A:
    • 乘积X,变式1
    • 乘积Y,变式3

  • 客户B:
    • 乘积X,变式2
    • 乘积Z,变式1
    • 乘积W,变式1

然后客户应该能够登录,进入商店的一个页面(例如store.com/top_products),并看到他们自己的“顶级产品”。

我至今所做的事

我成功地将rails Shopify应用程序(app,它使用shopify_api gem)部署到Heroku,并将其连接到我的商店。

我还成功地设置了应用程序代理。我得到了正确的反应,从应用程序的管理应用程序页面和应用代理。

从本质上说,我的公共应用程序似乎运行良好。

我现在要做的事

我将不得不在应用程序代理中调用这样的内容:

代码语言:javascript
复制
ShopifyAPI::Product.find(:all, params: { limit: 10 })

但是,这只能从ShopifyApp::AuthenticatedController (比如管理应用程序控制器)调用,而不能从ShopifyApp::ApplicationController (比如代理控制器)调用。

到目前为止,我只调用了API,并从商店的管理仪表板上看到了正确的结果。

I无法从未经身份验证的App .调用 ShopifyAPI::Product.find

谷歌并没有真正帮助我。这类似于我的问题(但没有解决方案):https://ecommerce.shopify.com/c/shopify-discussion/t/how-to-connect-to-a-store-with-api-from-app-proxy-request-429417

问题

  1. 从调用API的最佳方法是什么?
  2. 或者如何使用我的后端在商店前端显示一些信息,这与商店的API有关?应用程序代理是正确的方法吗?
EN

回答 1

Stack Overflow用户

发布于 2017-12-19 03:10:36

Shopify的App调用将商店作为参数shop提供给您。因此,您可以在后端查找商店,并对经过身份验证的会话执行任何操作。我一直用App和Webhooks来做这件事。您验证调用来自Shopify,您得到了商店名称,因此您可以打开一个安全会话。此外,您还可以使用App调用发送客户ID,以获取客户的产品。

您正在做正确的事情,App是正确的模式,所以继续下去。你离荣耀只有几分钟的路程。

我的代理控制器..。

代码语言:javascript
复制
shop = Shop.find_by(shopify_domain: params[:shop])
if shop
  shop.with_shopify_session do
    products = ShopifyAPI::Product.find(params[:id])
    # la-dee-da I got a product...
  end
end
票数 7
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47874352

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档