我尝试使用外部网站获取数据,但我似乎得到的是该网站的整个Html源代码。事实上,它不处理我传递给它的参数。 该网站是http://www.siirretytnumerot.fi/,如果我将QueryServerlet添加到链接的末尾,我只得到一个简短的链接源代码结构,没有任何结果。我也尝试过同时使用HttpPost和Get。请有人可以告诉我问题是该网站不能用于资源目的吗? 请接受任何建议或意见。 我正在使用的代码就是这个。请注意,我在此代码中包含了try和catch子句。
HttpClient client = new DefaultHttpClient();
String postURL = "http://www.siirretytnumerot.fi/";//if I add QueryServlet to the end it just gives a response with the html structure
BufferedReader in=null;
String data=null;
HttpPost post = new HttpPost(postURL);
List<NameValuePair> params = new ArrayList<NameValuePair>();
params.add(new BasicNameValuePair("PREFIX", "044"));
params.add(new BasicNameValuePair("NUMBER", "9782231"));
params.add(new BasicNameValuePair("LANGUAGE", "English"));
params.add(new BasicNameValuePair("Submit", "Search"));
UrlEncodedFormEntity ent = new UrlEncodedFormEntity(params,HTTP.UTF_8);
post.setEntity(ent);
HttpResponse responsePOST = client.execute(post);
in=new BufferedReader(new InputStreamReader(responsePOST.getEntity().getContent()));
StringBuffer sb=new StringBuffer("");
String l="";
String nl=System.getProperty("line.separator");
while((l=in.readLine())!=null){
sb.append(l+nl);
}
in.close();
data=sb.toString();
list.add(data);
datalist=new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1,list);
ml.setAdapter(datalist);
这是我从回复中获得的输出
<img src="QueryServlet?ID=457016727131196340&STRING=QIHfqzk16uj6adStbdzyaqMjYwaokhP1Zq1Tlz%2BjL4YQ7tRne4RdxwCcvcJKiZWvvsTXcpqHxcDplE9LVExKGg==" />
答案 0 :(得分:2)
试试这样:
String postURL = "http://www.siirretytnumerot.fi/QueryServerlet";
...
params.add(new BasicNameValuePair("Submit2", "Clear"));
...
UrlEncodedFormEntity ent = new UrlEncodedFormEntity(params);