反向代理请求在loopj.AsyncHttp

时间:2016-03-15 13:45:33

标签: android http nginx android-async-http loopj

我必须在android中为我的应用程序使用一个安静的API,在这个API中我们必须通过我们的服务器反向代理我们的应用程序请求(我使用nginx proxy_pass),因为API只回答一个注册的IP。登记/> 当我使用curl通过nginx的反向代理发送请求时,它会起作用 但是当我的Android应用程序使用loopj.asynchttp向它发送请求时,onSuccessful会触发,但请求状态为0,并且回答正文为空,我完全感到困惑。它没有返回数据,所以我可以找出它有什么问题。 在来自移动设备的nginx请求日志中,请求肯定会到达我的服务器,但返回的答案有问题。

1 个答案:

答案 0 :(得分:2)

当服务器或loopJ关闭连接时会出现这类问题。 它有几个原因:

  1. 防火墙
  2. LoopJ的超时
  3. enginx的超时
  4. 首先,它取决于您的防火墙,但配置起来非常容易。

    对于loopJ的超时,你可以使用setTimeout函数,如下面的代码:

    AsyncHttpClient client = new AsyncHttpClient();
    client.setTimeout(//connection time you need as an integer);
    

    您可以使用以下链接设置nginx超时配置: click here!

    我希望这些提示对您有所帮助。