2014-10-29 2 views
0

여기 프로젝트를 진행하면서 문제가 발생했습니다. 이전에는 문제가 없었지만 URL에 요청을 보내고 JSON 응답을 기다리고 있습니다. 그러나 응답을 확인하면 null로 되돌아옵니다. 이전에는 문제가 아니었지만 임의로 시작되었습니다. 어떤 도움이라도 대단히 감사 할 것입니다. 'Null 오류

또한 실제로 URL 요청을 수행하는 또 다른 클래스가 있습니다.

이 첫 번째 비트는 로그인 페이지의 onclick 수신기입니다. 텍스트 필드를 가져 와서 문자열로 변환합니다. 로그인이 작동하는 방식은 모든 정보를 URL로 푸시해야만하는 것이므로이 방법으로 설정됩니다. 좋아 여기

bt.setOnClickListener(new OnClickListener(){ 

     @Override 
     public void onClick(View v) { 
      String account = acct.getText().toString(); 
      String uname = user.getText().toString(); 
      String passWord = pass.getText().toString(); 
      url = ap+"&t2mdeveloperid="+id+account+"&t2musername="+uname+"&t2mpassword="+passWord; 
      new Login().execute(); 
     } 

    } 
      ); 

} 

요청이에서 실행되는 비동기 작업입니다. 다시 받고있는 JSON가 null의 경우

 private class Login extends AsyncTask<Void, Void, Void>{ 

    @Override 
    protected void onPreExecute(){ 
     super.onPreExecute(); 
     //Here we will display our progress bar. This is dependent on each page. 
     pDialog = new ProgressDialog(MainActivity.this); 
     pDialog.setMessage("Loading Talk2M Account"); 
     pDialog.setCancelable(true); 
     pDialog.show(); 
    } 


    @Override 
    protected Void doInBackground(Void... arg0){ 
     //We need to create an object to call our service handler to make our http request. 
     ServiceHandler login = new ServiceHandler(); 

     //Now we need to make a request to the url as well as recieve the response. 
     String response = login.makeServiceCall(url, ServiceHandler.GET); 
     Log.d("Response: ", "> " + response); 

     try{ 
      JSONObject jsonObj = new JSONObject(response); 
      String session = jsonObj.getString(TAG_SESSION); 



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

     return null; 
    } 

    @Override 
    protected void onPostExecute(Void result){ 
     super.onPostExecute(result); 
     if(pDialog.isShowing()) 
      pDialog.dismiss(); 

    } 
} 

답변

0

것은, 내 첫번째 추측은 당신이 바로 타격하고 있는지 확인하는 것입니다 URL. 그렇다면 api 측에 문제가있을 수 있습니다. REST 클라이언트 나 웹 브라우저에서 응용 프로그램의 컨텍스트 외부에서이 HTTP 요청을 테스트 할 수 있습니다.

감사합니다.

+0

요청에 밀린 모든 것을 통해 도달 가능한 것으로 표시되는지 확인했습니다. – basic

+0

요청을 성공적으로 할 수는 있지만 JSON이 돌아 오기 때문에 HTTP 응답에 문제가있는 것으로 보입니다. – musgravejw