ゴール
以下のアプリを作りたいです。
マーチャントは、顧客ごとに「トップ製品」を選択します。これらはバックエンドに保存されます。
例えば:
- 顧客A:
- 製品 X、バリエーション 1
- 製品 Y、バリエーション 3
- 顧客B:
- 製品 X、バリエーション 2
- 製品 Z、バリエーション 1
- 製品 W、バリエーション 1
store.com/top_products
顧客はログインし、ストアのページ (例: ) に移動して、自分の「トップ製品」を確認できるはずです。
今までできたこと
Rails Shopify アプリ ( https://github.com/Shopify/shopify_app、 shopify_api gem を使用) を Heroku にデプロイし、自分のストアに接続することができました。
また、アプリプロキシをセットアップすることもできました。管理アプリ ページとアプリ プロキシの両方に対して、アプリから適切な応答が得られます。
基本的に、私の公開アプリは正常に動作しているようです。
私が今しなければならないこと
アプリ プロキシで次のようなものを呼び出す必要があります。
ShopifyAPI::Product.find(:all, params: { limit: 10 })
ShopifyApp::AuthenticatedController
ただし、これは(管理アプリ コントローラーのように)からのみ呼び出すことができ、 (ShopifyApp::ApplicationController
プロキシ コントローラーのように) 呼び出すことはできません。
これまでのところ、API を呼び出してストアの管理ダッシュボードから正しい結果を確認することしかできませんでした。
認証されていないアプリ プロキシから呼び出すことができません。ShopifyAPI::Product.find
Google はあまり役に立ちません。これは私の問題に似ています (解決策はありません): https://ecommerce.shopify.com/c/shopify-discussion/t/how-to-connect-to-a-store-with-api-from-app -proxy-request-429417
質問
- アプリ プロキシから API を呼び出す最良の方法は何ですか?
- または、ストアの API と通信するバックエンドを使用して、ストアのフロントエンドに情報を表示するにはどうすればよいですか? アプリ プロキシは正しいアプローチですか?