私は現在、私のRailsバックエンド用のAndroidアプリを開発中です。RESTful RAILSとAndroid HttpRequests
ユーザーがHttpPostを使用してAndroidからログインし、そのトークンをRailsユーザーテーブルとAndroid共有設定の両方に保存するときに、api_tokens_controllerを作成してapi_tokenを作成しました。私はこれを確認することができました。
私はのparamsとしてapi_tokenを送信しようとしています:最初のログイン後に後続のすべての要求と私のAndroidアプリからとRailsを確認している[api_token]:User.rbで
:
def self.authenticate_with_api_token(api_token_from_mobile)
user = find_by_api_token(api_token_from_mobile)
if user.nil?
return nil
else
return user
end
end
をユーザーが存在する場合は、他のデータをJSONObjectとして送信します。
ここでは概念的に問題が発生しています。私は今、Androidアプリケーションを ...に移動しようとしています... 3000人のユーザーとHttpGetのユーザーデータをJSONObjectsとして表示します。問題は、Androidアプリからapi_tokenをHttpGetのRailsに送信する方法がわかりません。私はそれがRESTfulなので、私のHttpRequestsはレールのルートが動作する方法に対応しなければならないと仮定しています。
質問:
はのparamsのJSONObjectに送信することが可能です[:api_token] AndroidアプリからレールにHTTPGETで?
私のHttpRequestsは、Railsが動作するRESTfulな方法に対応する必要がありますか、またはHttpPostだけを使用できますか?
おかげ
こんにちはトム、あなたの答えをありがとう。モバイルアプリでは、データ(api_token)を送信し、リクエストごとにデータを受け取る必要があります。私は、ログイン情報を送信するためにHttpPostを使用することができ、apitokenscontrollerの作成アクションの下で、同時にrailsの終わりからapi_tokenを受け取ることができました。私はこのapi_tokenを使ってuserscontrollerに行き、検証のためにそれを送り、1つのリクエストでデータを返すようにしようとしています。私の問題は、http要求(GET、POST、PUTなど)とルート(/ users、users/1など)のタイプによってアクションが決定される場所で、レールルートが動作する方法にあります。 – railslearner
こんにちはトム、私はそれ以上読んできて、あなたの答えはそれかもしれないと思います。 RESTfulなルートがあるため、URLパラメータの事を理解することができません。 HttpPostはURLで何も変更せずにparams []を送ることを許可しました。私はHttpGetもそういうものを持っているべきだと思っていました。しかし、私はURLを介してパラメータを送信することができ、私はそれを指定する...:3000/users.json?api_token = token、rails側(UsersControllerのインデックス内)でparams [:api_token]が指定されなければならない期待?ありがとう – railslearner
私はこれが動作することを確認しました – railslearner