8

API を構築しようとしていますが、すべてのリソースが api.myapp.com ドメインでアクセスできないか、間違った uris で「ライブ」になるのではないかと心配しています。

ドメイン名に CNAME を追加して、Heroku アプリを指すようにしました。(例: www.myapp.com を参照すると、https://myherokuapp.heroku.comに移動します)

https://api.myapp.comへの GET でhttps://myherokuapp.heroku.com/api/v1にアクセスできるように、API サブドメインを設定したいと思い ます。

最良のシナリオは、https: //api.myapp.com/accounts/12345 への POSTによって新しいアカウントが作成されることです。それは可能ですか?

(サブドメイン (例: mysubdomain.myappname.heroku.com) は Heroku では使用できないことを知っています)

答えは次の 3 つの場所にあると思います。

  1. DNS プロバイダーの転送構成と関係があります (「A」レコードと関係がある可能性があります)。
  2. ドメイン/サブドメインを処理するための有料アドオンである可能性があります。
  3. アプリ内のすべてのサブドメインを処理します。
4

1 に答える 1

2

api.mydomain.com と www.mydomain.com を区別し、API リクエストに異なるコントローラーを使用する場合は、API サブドメインに制限された Rails ルートを使用してこれを処理できます。

constraints :subdomain => "api" do
  scope :module => "api", :as => "api" do
   resources :posts
  end
end

次に、アプリケーションの app/controllers/api フォルダーにある posts_controller.rb を使用します。

次に、www.mydomain.com と api.mydomain.com の両方にアプリケーション用のカスタム ドメインを追加すると、残りはルートによって処理されます。

API の構築を支援するために、 Grape Gemを調べることもできます。

于 2013-03-01T16:56:40.433 に答える