3

我有一个可以接收 HTTP Post 请求的 Web API Asp .Net。我已经测试了Postman - Rest Client或其他类似应用程序的 Web 服务,一切正常:Web 服务立即响应我。但是,如果我尝试从我的 Android 应用程序调用相同的 Web 服务,我会遇到问题:

第一次调用 Web 服务很慢,而下一次调用很快。如果我停止调用 ws,然后我重试,例如 1 分钟后,ws 响应再次变慢,接下来的响应很快……以此类推。

在这里,我用于调用 Web 服务的代码。

String wsURI = "www.myWsUrl...";
url = new URL(wsURI);

try{    
    httpConnection = (HttpURLConnection) url.openConnection();
    httpConnection.setDoInput(true); // ?
    httpConnection.setDoOutput(true);
    httpConnection.setRequestMethod("POST");
    httpConnection.setRequestProperty("Content-Type", "application/json");

    JSONStringer requestData = new JSONStringer()
         .object()
              .key("id").value(12)
              .key("frequence").value(1000)
              .key("code").value("ABCAB-0123")
                  .endObject();

    BufferedWriter out = new BufferedWriter(new  OutputStreamWriter(httpConnection.getOutputStream()));
    out.write(requestData.toString());
    out.close();

    resCode = httpConnection.getResponseCode();
...

    }catch(){
        ...
    }finally{
        if(httpConnection!=null)
            httpConnection.disconnect();
    }
4

0 回答 0