2011-06-27 7 views
0

私はAndroidアプリを使用して自分のウェブサイトにログインしようとしています。何らかの理由で、何かが常に間違っています。Android httpポストログイン

は、ここに私のサイトのログイン構造です: - ログインフォーム(ユーザー名&パスワード)

Auth.phpから

Login.phpログイン認証ページ(からユーザー名&パスワードを取得page - login.php(POSTメソッド)) 私は既にユーザー名とのインタフェースが必要です&パスワード(EditText

アンドロイドアプリを使用してログインする方法は何ですか?私はメソッドを呼び出すときに、responseStr全体を取得し、1ページ(&認証ログイン)両方のページをマージ


private void login() { 

     HttpClient httpclient = new DefaultHttpClient(); 
     HttpPost httppost = new HttpPost("http://url/auth.php"); 
     JSONObject jsonObject = new JSONObject(); 

      try { 

       List nameValuePairs = new ArrayList(2); 
       jsonObject.put("action", "login"); 
       jsonObject.put("username", "user1"); 
       jsonObject.put("password", "12345"); 

       nameValuePairs.add(new BasicNameValuePair("jsonString", jsonObject.toString()));    

       httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs, HTTP.UTF_8)); 
       HttpResponse response = httpclient.execute(httppost); 


       String responseStr = org.apache.http.util.EntityUtils.toString(response.getEntity()); 

       statusText.setText(responseStr); 
      } catch (ClientProtocolException e) { 
       statusText.setText(e.getLocalizedMessage()); 
      } catch (IOException e) { 
       statusText.setText(e.getLocalizedMessage()); 
      } catch (JSONException e) { 

      } 

    } 

を編集:

は、ここに私の現在のログイン方法ですページのHTMLコード。

ありがとうございます。

+1

このコードではどのようなエラーが発生していますか? – sparkymat

+0

私はエラーや例外を受け取りません –

+0

あなたは何かがいつも間違っていると言いました。貼り付けたコードは正しいと思われます。あなたはあなたが探している応答を取得していませんか? – sparkymat

答えて

0

toStringメソッドを使用して応答本文を記録することはできません。

responseEntityで返されるオブジェクトは、InputStreamとして読み取ることも、より簡単にEntityUtilsクラスの文字列に変換することもできます。

String responseStr = org.apache.http.util.EntityUtils.toString(response.getEntity()); 

responseStrを記録してみてください。