Rails を使用して shopify アプリを開発しており、OAuth2 認証の両方のリンクをたどっています: http://api.shopify.com/authentication.html
& https://github.com/Shopify/shopify_api
.
パーマネント アクセス トークンを要求するステップで行き詰まりました。client_id、client_secret、およびコード パラメータをhttps://SHOP_NAME.myshopify.com/admin/oauth/access_token
認証ドキュメントで指定されているとおりに POST しましたが、アクセス トークンを受け取りません。取得した応答は、本文とヘッダーが空のステータス 200 です。
コード:
http = Net::HTTP.new("https://#{params[:shop].to_s.strip}")
request = Net::HTTP::Post.new("/admin/oauth/access_token")
request.set_form_data({
"client_id" => ShopifyApp.configuration.api_key,
"client_secret" => ShopifyApp.configuration.secret,
"code" => params[:code].to_s.strip
})
response = http.request(request)
応答:
@body=[],
@header={},
@status=200,
私をさらに混乱させているのは、(ここで間違っている可能性がありますが)shopify_appがこのステップを実行していないようです. また、同様の質問も見つけました。Shopify アプリのパーマネント アクセス トークンを受け取ることができませんが、まだ回答がありません。
追記:誤字だったので.myshopify.com
削除。http = Net::HTTP.new("https://#{params[:shop].to_s.strip}")
編集 2:
結果が得られた HTML フォームから投稿しようとしましたが、上記の例または rest-client gem を使用してコード内でこれを機能させることができませんでした。
ここで何が起こっているのか、まだ非常に混乱しています。