2017-02-24 2 views
0

Shopify APIのドキュメントでは、Shopify Plusアカウントの代金を支払うユーザーにリソース「ユーザー」が提供されます。以下を参照してください https://help.shopify.com/api/reference/user#current Shopify Plusのユーザーは少数ですので、shopify_api gemはこれらの呼び出しをサポートしていないため、自分でビルドする必要があります。私はそうのような現在のShopifyAPIモジュールとクラスを拡張することでこれをやって試してみた:shopify_api gemをレールで拡張して、Shopify Plusユーザーのみが利用できるリソースを取得する

module ShopifyAPI 
    class User < Base 
    def self.current(options={}) 
     find(:one, options.merge({from: "/admin/users/current.json"})) 
    end 
    end 
end 

は、それから私は、次のような新しいメソッドを呼び出します。

@user = ShopifyAPI::User.current 

私は「見つかりません」エラーが発生します。私はそれがしようとしている呼んで参照するにはActiveResourceのログをチェックすると、妙に私は右に見えている、以下の取得:

I, [2017-02-24T13:14:19.278087 #4890] INFO -- : GET https://mazer-3.myshopify.com:443/admin/users/current.json 
I, [2017-02-24T13:14:19.278356 #4890] INFO -- : --> 404 Not Found 22 (279.5ms) 
I, [2017-02-24T13:14:19.279605 #4890] INFO -- : Headers: {"Accept"=>"application/json", "User-Agent"=>"ShopifyAPI/4.3.5 ActiveResource/4.1.0 Ruby/2.3.1", "X-Shopify-Access-Token"=>"SOME_CHARACTERS_HERE_I_AM_NOT_SHOWING_TO_THE_PUBLIC"} 
I, [2017-02-24T13:14:19.279680 #4890] INFO -- : Response: 
{"errors":"Not Found"} 

私はそれを、それが最初の行に生成されたURL、https://mazer-3.myshopify.com:443/admin/users/current.json、および貼り付けることをコピーした場合私のブラウザでShopifyにログインしている間に、奇妙なことに私に現在のユーザと200の成功応答コードが与えられます。

ActiveResourceの設定に欠けているものはありますか?

答えて

0

ShopはPlusショップではないため、使用するためにアクティブ化されたAPIエンドポイントはありません... Shopifyがこれらの通話を許可していない場合、独自のエンドポイント呼び出しを作成して機能することはできません。内部的には、ユーザーのようにPlusスコープをオンにします。

あなたはそれを良い試みだと考えることができますが、Shopifyを偽造することはできません。

+0

あなたはそうでないものを想定しています。私はShopify plusを持っていますが、内部的にプラスのスコープがあります。ここの質問は、shopify_apiの宝石をどのように使ってそれらを使うのですか? Shopify GEMには、shopify plus APIが組み込まれておらず、Shopify Plus APIの宝石は用意されていません。 –

+0

プログラマーがしていることをしてください。フォークの宝石。必要なエンドポイントに適したコードをコピー&ペーストし、必要に応じて編集し、アプリケーションでフォークを使用します。そうすれば、上流の変更を簡単に維持できます。私はshopify_apiの宝石が提供できないときはいつもこれをします。 –

+0

また、PHPの人々が何時も何をしているのかは、cURLを使用してください... haha​​ha ... –

関連する問題