ゴール
次のアプリを作成します。App ProxyからShopify APIに電話
マーチャントは、顧客ごとに「トップ商品」を選択します。これらはバックエンドに保存されます。例えば
:
- カスタマーA:
- 製品X、バリアント1
- 製品Y、バリアント3
- カスタマーB:
- 製品X 、変異体2
- 製品Z、変種1
- 製品W、変種1
顧客は、ログインすることができるはずです、ストア内のページに移動する(例えば、 store.com/top_products
)、独自の「トッププロダクト」を参照してください。私はこれまで
を行うために管理何
私はHerokuのに(shopify_api宝石を使用していますhttps://github.com/Shopify/shopify_app、)レールShopifyアプリを展開し、私の店にそれを接続するために管理。
私はアプリのプロキシを設定することもできました。管理アプリのページとアプリのプロキシの両方に対して、アプリから適切な回答が得られます。
私のパブリックアプリケーションは基本的にうまくいくようです。
ShopifyAPI::Product.find(:all, params: { limit: 10 })
はしかし、これが唯一の管理アプリのコントローラのように(ShopifyApp::AuthenticatedController
から呼び出すことができます:私はアプリプロキシにこのような何かを呼び出す必要があります私は今
をしなければならない
)で、ShopifyApp::ApplicationController
(プロキシコントローラのようなもの)ではありません。
これまでのところ、私はAPIを呼び出して、ストアの管理ダッシュボードから正しい結果を確認することしかできませんでした。
ShopifyAPI::Product.find
私は認証されていないApp Proxyから電話をかけることができません。
Googleは本当に私を助けません。 これは私の問題に似ている(ただし何の解決策を持っていません):https://ecommerce.shopify.com/c/shopify-discussion/t/how-to-connect-to-a-store-with-api-from-app-proxy-request-429417
質問
- 何のAppプロキシからAPIを呼び出すための最良の方法でしょうか?
- また、ストアのAPIと通信する バックエンドを使用してストアフロントエンドに情報を表示するにはどうすればよいですか?アプリプロキシは正しいアプローチですか?