私はレール付きの宝石をshopify_app使っています。私はshopify_appを入れ子にしたルートから操作します。例:/ shopify_app/loginまたは '/ shopify_app/auth/shopify/callback'の場合 shopify_app gemのエンジンルートを変更してください
私は宝石のマニュアルの解決策を試してみましたが、私のroutes.rbをファイルにこれらの行を置く:mount ShopifyApp::Engine, at: 'shopify_app'
get '/shopify_app' => 'settings#index'
しかし、それはこのように動作しませんでした。だから、私は周りを探索し、omniauthイニシャライザでいくつかの変更を行うことで動作させるための解決策を見つけました。ここで
Rails.application.config.middleware.use OmniAuth::Builder do
provider :shopify, ShopifyApp.configuration.api_key, ShopifyApp.configuration.secret, scope: ShopifyApp.configuration.scope, callback_path: '/shopify_app/auth/shopify/callback'
end
は、アプリの設定です:アプリのSDK組み込み
:https://salebait.com/settings
ホワイトリストリダイレクトURL::私はインストール時にhttps://salebait.com/shopify_app/auth/shopify/callback
今問題がある
アプリのURLを有効に私のアプリは最初に私のウェブサイトのホームページ(https://salebait.com)にリダイレクトされます代わりにストア管理者のhttps://salebait.com/settingsページを開く必要があります。ブラウザを閉じたり店舗からログアウトして再びアプリに戻ったりするとhttps://salebait.com/loginになります。これは有効なページではありません。すべてのアプリルートが/ shopify_app /内にラップされているため、アプリのログインURLはhttps://salebait.com/shopify_app/loginである必要があります。 次に、手動でアプリのログインURLをヒットして機能させる必要があります。
私のアプリのルートがスムーズに機能するようにいくつかの解決策を提案してください。
編集:ここでは...別のブラウザでアプリを開くしようとした場合のAppは、間違ったログインページにリダイレクトするためのエラー画面です:
感謝。
私にとってはうまくいった。あなたが提供したURLに基づいて、アプリケーションが正しくインストールされ、リダイレクトされました。実際には存在しない資産が存在すると仮定すると、アプリケーションにエラーがあります。そこにいくつかの防御的なコーディングがあり、あなたはレースを離れているかもしれません。 Shop_API :: Asset.find( 'snippets/sale_bait_common_elems.liquid'、:params => {:theme_id => shop.active_theme}) –
こんにちは@DavidLazar、アプリをインストールしたときに、あなたのアプリの設定を見せてくれましたか?それともhttps://salebait.comに行きましたか? ログアウトしてからもう一度お試しください。 – shalini
私が言及したように。流れは大丈夫だった。発生した唯一のエラーは、あなたが探しているリソースが存在することをアプリケーションで行ったという仮定でした。そうでないときは、404の例外をキャッチしていなかったので事が爆発しました。 –