HttpURLConnection类返回500错误代码在Amazon Elastic青苗返回错误代码500的任何呼叫

问题描述:

我的Android代码来调用Web服务的PHP(JSON),但getErrorStream回我的服务的正确的返回。HttpURLConnection类返回500错误代码在Amazon Elastic青苗返回错误代码500的任何呼叫

当我打电话的getInputStream我收到错误IOException,但URL是正确的,当我用浏览器返回调用是正确的。

我的代码:

public class AsyncLogin extends AsyncTask<String, String, String> { 

    private Activity activity; 

    public AsyncLogin(Activity activity) 
    { 
     this.activity = activity; 
    } 

    @Override 
    protected String doInBackground(String... url) { 

     StringBuilder resultado = new StringBuilder(); 
     try { 
      String urlx = url[0]; 
      URL urlNet = new URL(urlx); 
      HttpURLConnection conn= (HttpURLConnection) urlNet.openConnection(); 
      conn.setReadTimeout(10000); 
      conn.setConnectTimeout(15000); 
      conn.setRequestMethod("GET"); 
      conn.setRequestProperty("Content-Type", "application/json"); 
      conn.setUseCaches(false); 

      conn.connect(); 

      int resposta = conn.getResponseCode(); 

      InputStream retorno = conn.getInputStream(); 
      BufferedReader br = new BufferedReader(new InputStreamReader(retorno)); 


      String linha = ""; 
      while ((linha=br.readLine())!= null) 
      { 
       resultado.append(linha); 
      } 

      conn.disconnect(); 

     } catch (Exception e) { 
      e.printStackTrace(); 
     } 

     return resultado.toString(); 
    } 

    @Override 
    protected void onPostExecute(String resultado){ 
     if (Boolean.valueOf(resultado)) 
     { 
      Toast.makeText(activity, "1", Toast.LENGTH_LONG).show(); 
     }else { 
      Toast.makeText(activity, "2", Toast.LENGTH_LONG).show(); 
     } 

    } 
} 

和我的PHP代码:

<?php 
    header('Content-type: application/json'); 
    $data = array(
    'Teste' => 'Alo mundo!' 
    ); 

    $resultado = json_encode($data); 

    echo $resultado; 
?> 
+0

500错误是服务器端。请你把'stacktrace'日志 – Riad

+0

在onPostExecute你应该Toast'resultado'。现在你什么都看不到。 – greenapps

+0

GET与内容类型application/json? Whers是JSON吗? – greenapps

我的PHP有最后的代码行一个错误,当我在web浏览器phpcode看到打印的json没有显示错误,但最后一行生成错误代码500,当我与Android调用正确的错误代码是500

我解决我的PHP最后一行(关闭连接)和该代码工作正常。