我有一个 https 请求,通过下面的代码从外部的 api 服务器获取数据。
ConnectionRequest req = new ConnectionRequest(){
@Override
protected void handleErrorResponseCode(int code, String message) {
retval[0] = false;
return;
}
};
req.setFailSilently(true);
req.setSilentRetryCount(5);
req.setUrl(invUrl);
req.setPost(true);
req.setContentType("application/x-www-form-urlencoded");
req.addArgument("Param1","3.10");
NetworkManager.getInstance().addToQueueAndWait(req);
int code = req.getResponseCode();
String message = req.getResponseErrorMessage();
if (retval[0]==false){
return null;
}
byte[] data = req.getResponseData();
if (data == null) {
//throw new IOException(UIManager.getInstance().localize("!network_error", ""));
}
JSONParser parser = new JSONParser();
Map<String, Object> response = parser.parseJSON(new InputStreamReader(new ByteArrayInputStream(data), "UTF-8"));
如果我在模拟器上运行代码,请求总是得到成功响应(99% 成功)。 如果我在 iOS 或 Android 上运行代码,请求总是无法获得错误的响应。 (39% 成功)。