无法将数据从aws中的rails应用程序发送到Android应用程序

时间:2015-04-28 05:57:10

标签: android ruby-on-rails amazon-web-services amazon-ec2 passenger

我已经构建了一个与Android应用程序交互的rails应用程序。在localhost上从android发送和接收数据是完美无缺的。但是当我上传到AWS EC2实例时,我只能将数据从android发送到服务器,而不是相反。

我正在使用乘客宝石在AWS上传。

我的rails代码接受来自应用程序的请求,提供200 OK

class Android::OnetimeloginController < ApplicationController
  respond_to :json
# This handles one time login from the android app

  def create

    # Takes up the credentials from the android app and
    # sends the header token to be used for further pings
        credentials = permitted_credentials

    # Checks the credentials and renders the responses 
      if credentials.has_key?("name")
        if Branch.exists?(name: credentials["something"]) && credentials["password"] == "something"

          response_json =  {"response" => "Yes"}
            render :json => response_json
        else
          render :text => "NO"
        end

      end

  end

  private

  def permitted_credentials
    params.require("credentials").permit(:name, :password, :tablet_id)
  end
end

但是我没有在android端获得任何东西(虽然我在localhost中得到了响应)

我甚至得到了对我的CURL请求的回复。 我的卷发命令。

 curl -v -H "Content-type: application/json" -X POST -d ' {"credentials":{"name" : "something", "password": "something"}}'  http://IP/path_to_controller

我检查了来自android请求的“Content-type”和“Accept”标题,但没有用。

请告诉我哪里出错了?这是一个AWS问题吗?

1 个答案:

答案 0 :(得分:2)

我有同样的错误。它对rails脚本没有问题。我认为你使用的排球框架可能已经腐败或有缺陷。尝试使用gradle从任何其他来源导入库。尝试从mcxiaoke.volley导入。它对我有用....