2011-07-19 10 views
0

複数の異なる投稿要求を使用してウェブページからデータにアクセスする必要があります。今のところ、私は次のものを使用しています:ループHttpPostリクエスト

HttpClient httpclient = new DefaultHttpClient(); 
HttpPost httppost = new HttpPost("https://myurl"); 
List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(2); 
nameValuePairs.add(new BasicNameValuePair("action", "search")); 
nameValuePairs.add(new BasicNameValuePair("ndc", ndc)); 
httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs)); 
HttpResponse response = httpclient.execute(httppost); 

この要求は、変数ndcに異なる値を使用して送信する必要があります。この線をループするのは良い考えですか?もしそうなら、HttpClientとHttpPost変数を再利用する方法は?

答えて

0

URLを同じにする必要がある場合は、送信する必要がある値のみを変更する必要があります。

for (int i=0; i<ndcArray.length;i++) 
{ 

    if(i==theNumberWhenURLhasToBeChanged) //adjust this condition based on your knowledge when the url has to be changed, lets say if i > theNumberWhenURLhasToBeChanged, then change the url... 
    { 
    httppost = new HttpPost(URLs[theNumberWhenURLhasToBeChanged]); 
    } 

nameValuePairs.add(new BasicNameValuePair("ndc", ndcArray[i])); 
httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs)); 
HttpResponse response = httpclient.execute(httppost); 
} 

注:レスポンスは毎回変更されるため、レスポンスをどこかに保存してください。そして、ndcArray []は必要な構造に置き換えることができます。

+0

URLは、別のURLが最初に1回ロードされた後、任意の(> 1)回同じ時間を維持します。 – Woppe

+0

これって何? –

+0

ありがとう、ありがとう – Woppe

関連する問題