HttpClient を使用して奇妙な問題が発生しています。HttpPost で DefaultHttpClient() を使用しています。私は100%の成功でHttpGetを使用していましたが、使用しているREST APIがGETではなくPOSTパラメーターを必要とするため、HttpPostに切り替えようとしています。(ただし、一部の API 呼び出しに対してのみ、GET 呼び出しが正常に機能していたことを知っているため、API の障害ではありません)。
また、私が書いた単純なphpスクリプトでHttpPostを使用して、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 ページですが、これが問題になる可能性はありますか?
しかし、API で生の HTTP ページに対して同じタイプの POST 要求を実行すると、StringEntity 部分をコメントアウトしてから実行しない限り、同じエラーが発生します (ただし、xml が返され、JSON でデータを要求するパラメーターを渡したい)。 .
これは本当に奇妙な問題 (https 以外の部分) のように思えますが、この問題に関するヘルプを実際に見つけることができなかったので、答えがあれば申し訳ありません。
何か案は?
前もって感謝します、
インフィニティフズ
編集: さて、私はどこにも行きませんので、API に案内した場合、それはいくつかの光を当てるかもしれないと思いました.8Tracks APIであり、ご覧のとおり、すべてのリクエストに対して開発キー (api_key) を渡す必要があります。 https を使用してユーザーをログインさせることにこだわっています: http://www.8tracks.com/sessions.xml " の部分。
私は行き止まりにいるので、これが何らかの形で役立つことを願っています。
ありがとう、
インフィニティフィズ