У меня странная проблема с использованием HttpClient. Я использую DefaultHttpClient () с HttpPost. Я использовал HttpGet со 100% -ным успехом, но теперь пытаюсь переключиться на HttpPost, поскольку REST API, который я использую, хочет получить параметры POST, а не GET. (Только для некоторых вызовов API, хотя я знаю, что вызовы GET работали нормально, поэтому это не ошибка API).
Кроме того, я попытался использовать HttpPost в написанном мною простом php-скрипте, который ищет параметр POST 'var' и выводит его на экран, передавая эти параметры следующим образом:
List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>();
postMethod = new HttpPost("http://www.examplewebsite.com");
nameValuePairs.add(new BasicNameValuePair("var", "lol"));
try {
postMethod.setEntity(new UrlEncodedFormEntity(nameValuePairs));
response = httpClient.execute(postMethod, responseHandler);
Log.i("RESTMethod", response);
...
Проблема в том, что когда я пытался сделать тот же вызов API (но с изменением параметров на параметры API, очевидно), я получаю следующую ошибку:
Authentication error: Unable to respond to any of these challenges: {}
Запрашиваемая мной страница является страницей HTTPS, может ли это быть проблемой?
Но выполнение такого же типа запроса POST для необработанной HTTP-страницы в API приводит к той же ошибке, если я не закомментирую часть StringEntity, а затем она выполнится (но возвращает xml и я хочу передать параметр для запроса данных в формате JSON).
Это похоже на действительно странную проблему (часть, не относящуюся к https), но не смог найти помощи по этой проблеме, так что извините, если ответ там есть.
Есть идеи?
Заранее спасибо,
Infinitifzz
РЕДАКТИРОВАТЬ: Ладно, я ничего не получаю, поэтому я подумал, что если я направлю вас к API, это может пролить некоторый свет, это 8Tracks API , и, как вы можете видеть, вам нужно передать ключ dev ( api_key) для всех запросов, и часть, на которой я застрял, использует https для входа пользователя с помощью: http://www.8tracks.com/sessions.xml" part.
Надеюсь, это поможет, потому что я зашел в тупик.
Спасибо
Infinitifizz