Im новое в разработке android, и теперь мне нужно создать и использовать запрос POST. В соответствии с этим post я пытался поставить мои данные:Создание правильных HTTP POST-данных
List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(13);
nameValuePairs.add(new BasicNameValuePair("SelectedCode", "25"));
nameValuePairs.add(new BasicNameValuePair("Phone", "1234567"));
nameValuePairs.add(new BasicNameValuePair("Text", "1234"));
nameValuePairs.add(new BasicNameValuePair("IsTranslit", "false"));
nameValuePairs.add(new BasicNameValuePair("IsShedule", "false"));
nameValuePairs.add(new BasicNameValuePair("LastDate", ""));
nameValuePairs.add(new BasicNameValuePair("LastDateHour", "00"));
nameValuePairs.add(new BasicNameValuePair("LastDateMinuts", "00"));
nameValuePairs.add(new BasicNameValuePair("DateSendBefore", ""));
nameValuePairs.add(new BasicNameValuePair("DateSendBeforeHour", "00"));
nameValuePairs.add(new BasicNameValuePair("DateSendBeforeMinuts", "00"));
nameValuePairs.add(new BasicNameValuePair("CaptchaDeText", "h3Vcjwk2moLagspo7lnKpg%3D%3D"));
nameValuePairs.add(new BasicNameValuePair("CaptchaInputText", "4myin2"));
httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
но он не работает. Затем я попытался использовать этот код (извините за длинную линию)
httppost.setEntity(new StringEntity("SelectedCode=25&Phone=1234567&Text=123&IsTranslit=false&IsShedule=false&LastDate=&LastDateHour=00&LastDateMinuts=00&DateSendBefore=&DateSendBeforeHour=00&DateSendBeforeMinuts=00&CaptchaDeText=h3Vcjwk2moLagspo7lnKpg%3D%3D&CaptchaInputText=4myin2"));
И это работает. Может кто-нибудь объяснить, в чем разница или что я делаю неправильно?
ОБНОВЛЕНО:
К не работает, я имею в виду, что сервер не распознает этот запрос пост, как правильно. Это произойдет, если я добавлю неверное значение в список NameValuePair, например. Но с моей стороны имя и значение в первом фрагменте кода, а во втором - то же самое. Это удивляет меня.
Не работает ошибка. Что происходит, что отправляется, что получает сервер? – CodeCaster
Если я хорошо помню, 'UrlEncodedFormEntity' кодирует каждый параметр, но ваш параметр' h3Vcjwk2moLagspo7lnKpg% 3D% 3D' уже закодирован. Это может быть проблемой –
хм, да, вы были правы – user1248568