我在这里难过 . 自从Android 1.5以来,我一直在使用相同的HttpUrlConnection代码从我的服务器中检索JSON . 突然,用2.3它将无法工作,我无法理解为什么 .

这是我的代码:

try {            
        HttpURLConnection conn = 
            (HttpURLConnection)(new URL(Constants.SERVER_URL + path)).openConnection();
        conn.setAllowUserInteraction(false); // no user interact [like pop up]
        conn.setDoOutput(true); // want to send
        conn.setDoInput(true);
        conn.setRequestMethod( "POST" );

        conn.setRequestProperty( "Content-type", "application/x-www-form-urlencoded" );
        conn.setRequestProperty( "Accept", "application/json,text/html,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5" );
        conn.setRequestProperty( "Accept-Charset", "UTF-8" );
        conn.setRequestProperty("Connection", "Keep-Alive");


        DataOutputStream pw = new DataOutputStream (conn.getOutputStream());
        pw.writeBytes(requestString);
        pw.flush();
        pw.close(); 



        if (conn.getResponseCode() == 200) {
            InputStream in = new BufferedInputStream(conn.getInputStream());
            BufferedReader br = new  BufferedReader(new InputStreamReader(in));

            StringBuffer stringBuffer = new StringBuffer();

            while(br.ready()){
                stringBuffer.append(br.readLine());
            }

            br.close();
            in.close();

            return stringBuffer.toString();

        } else {
            return badResponse;
        }

    } catch (Exception ioe) {
        return ERROR_MAKING_CONNECTION;
    }

响应返回时代码为200,但是,当我运行conn.getInputStream() . available()时,结果为-1 . 在除了2.3之外的每个其他android api上,conn.getInputStream() . available()返回一个重要的响应 .

有任何想法吗?