2013-03-21 2 views
0

Вот код, который я использовал для запросов Async Http с использованием loopj.Строка ответа пуста в loopj для Android

AsyncHttpClient loopjClient = new AsyncHttpClient(); 

    PersistentCookieStore loopjCookieStore = new PersistentCookieStore(this); 
    loopjClient.setCookieStore(loopjCookieStore); 

    RequestParams loopjParams = new RequestParams(); 
    loopjParams.put("username", username); 
    loopjParams.put("email", emailID); 
    loopjParams.put("password", password); 
    Log.d(TAG, "RRRRRRlll"); 

    loopjClient.post("http://www.example.com/", loopjParams, new AsyncHttpResponseHandler() { 
     @Override 
     public void onSuccess(int k,String response) { 
      super.onSuccess(k, response); 
      Log.d(TAG, "RRRRRR "+ response); 
     } 


    }); 

И моя строка ответа сервера только следующая с нашей HTML-тегами

{"AUTHENTICATION":{"SUCCESS":false,"USERNAME":"unregistered","USERID":0},"ALERTBOX":{"SHOW":true,"MESSAGE":"Message : Username or email ID already registered. Please choose a different one."}} 

Но loopj оленьей кожей печатаемых вышеуказанной строки в onSuccess().

Можете ли вы рассказать, как получить строку или мне нужно вернуться к стандартной электронной библиотеке Android?

Заранее спасибо.

EDIT

Вместо «например» (мой сайт), если я заменю его с «Facebook» Я просто получаю следующую строку в качестве ответа с кодом 200 ответа <?xml version="1.0" encoding="utf-8"?>

+1

Возможно, ваш логарифм не правильно работает. вы можете попробовать с сообщением Toast один раз? –

+0

Yup, некоторая проблема с logcat – rahulg

ответ

1

Поскольку результат АВТОРИЗАЦИЯ не удалась, мне интересно, если код состояния, который возвращает ваш сервер, не 200. Вы можете переопределить метод onFailure, чтобы справиться с этой ситуацией.

@Override 
public void onFailure(Throwable e) { 
    Log.d(TAG, e.toString()); 
} 


Редактировать
Другой думаю, у вас добавили следующую строку в Manifest.xml?

<uses-permission android:name="android.permission.INTERNET" /> 


Редактировать Опять
Я видел ваши изменения, и кажется, что у вас есть багги LogCat как @ Шайлендра-rajawat упоминается в комментариях, так как LogCat печатается только первая строка. Попробуйте Тост вместо:

@Override 
public void onSuccess(int k, String response) { 
    Toast.makeText(getBaseContext(), response, 1).show(); 
} 

Я нашел this post для конфигурирования LogCat, и, возможно, вы можете дать ему попробовать. (Шахта 5000 FYI)

+0

Прежде всего, это не HTTP-аутентификация, поэтому неудача, указанная в строке, не связана с HTTP-аутентификацией. Во-вторых, код ответа, который я получаю, составляет 200, но не получаю никакого текста вместе с ним. :( – rahulg

+0

@rahulg Итак, что такое сообщение об ошибке в onFailure()? HttpResponseHandler войдет либо в onSuccess, либо в onFailure, но не в обоих. Можете ли вы разместить URL здесь? – iForests

+0

Конечно, я пытаюсь зарегистрироваться на http: // www.pikspeak.com/register.php, отправив данные сообщения. – rahulg

Смежные вопросы