使用LoopJ加密参数POST请求

时间:2013-01-09 16:16:16

标签: android rest loopj

我向亚马力应用程序商店提交了一个应用程序,但由于此问题而被拒绝:

  

此应用似乎发送了未加密的敏感信息。在这种情况下,电子邮件和密码以明文形式发送。请更新应用以加密所有敏感信息。

我正在使用LoopJ来处理我的http请求,我不确定为什么我的数据没有被加密,或者如何加密它。 这是我的代码。

public class MYAuthClient {
  private static final String BASE_URL = "http://www.mywebservice.net/";

  private static AsyncHttpClient client = new AsyncHttpClient();

  public static void post(String url, RequestParams params, AsyncHttpResponseHandler responseHandler) {
      client.post(getAbsoluteUrl(url), params, responseHandler);
  }

  private static String getAbsoluteUrl(String relativeUrl) {
      return BASE_URL + relativeUrl;
  }
}

提出要求。我这样做。

RequestParams params = new RequestParams();
    params.put("email", login_email);
    params.put("password", login_pass);
    MYAuthClient.post("api/v1/tokens.json", params, new AsyncHttpResponseHandler() {
         @Override
         public void onStart() {
             // Initiated the request
         }

         @Override
         public void onSuccess(String response) {
            // Successfully got a response

         }

         @Override
         public void onFailure(Throwable e, String response) {
             // Response failed :(
             Toast.makeText(getApplicationContext(), "Failed to connect to server", Toast.LENGTH_LONG).show();
         }

     });

有关使用加密和LoopJ的示例的任何帮助或链接? 谢谢!

1 个答案:

答案 0 :(得分:1)

此处的最佳解决方案是为您的网络服务提供https端点。

然后在您的Android中,将端点更改为https,如下所示:

http://www.mywebservice.net/

变为

https://www.mywebservice.net/

您需要检查托管Web服务的服务器是否已设置为服务器https。该问题的解决方案超出了这个问题的范围。

相关问题