我已经将参数传递给android中的url。我怎么知道我传递的值是否被发送到url.Below是我的java代码
package com.xib;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.Reader;
import java.io.StringWriter;
import java.io.Writer;
import java.util.ArrayList;
import java.util.List;
import org.apache.http.HttpResponse;
import org.apache.http.NameValuePair;
import org.apache.http.client.ClientProtocolException;
import org.apache.http.client.HttpClient;
import org.apache.http.client.entity.UrlEncodedFormEntity;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.message.BasicNameValuePair;
import android.app.Activity;
import android.os.Bundle;
import android.util.Log;
public class TestHttpPost extends Activity {
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
postData();
}
public void postData() {
Log.d("hi", "value of array is ");
HttpClient httpclient = new DefaultHttpClient();
HttpPost httppost = new HttpPost("http://services.mascus.com/api/mascusapi.asmx?op=OpenSession");
try
{
List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(2);
nameValuePairs.add(new BasicNameValuePair("username", "xib"));
nameValuePairs.add(new BasicNameValuePair("password", "efi99LKW"));
httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
Log.d("hi", "value of array is ");
HttpResponse response = httpclient.execute(httppost);
Log.e("hi", "value of array is ->"+convertStreamToString(response.getEntity().getContent()));
}
catch (ClientProtocolException e)
{
e.printStackTrace();
}
catch (IOException e)
{
e.printStackTrace();
}
}
public String convertStreamToString(InputStream is)
throws IOException {
/*
* To convert the InputStream to String we use the
* Reader.read(char[] buffer) method. We iterate until the
* Reader return -1 which means there's no more data to
* read. We use the StringWriter class to produce the string.
*/
if (is != null)
{
Writer writer = new StringWriter();
char[] buffer = new char[1024];
try {
Reader reader = new BufferedReader(new InputStreamReader(is, "UTF-8"));
int n;
while ((n = reader.read(buffer)) != -1) {
writer.write(buffer, 0, n);
}
} finally {
is.close();
}
return writer.toString();
} else {
return "";
}
}
}
任何人都可以帮助我 提前致谢 图沙尔
答案 0 :(得分:0)
只需添加此行
即可 String data = EntityUtils.toString(response.getEntity());
System.out.println("Data..."+data);
在这一行之后..
httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
并检查日志.... 你会得到服务器的响应..
答案 1 :(得分:0)
String link_push ="Your link"
DefaultHttpClient hc_push=new DefaultHttpClient();
ResponseHandler <String> res_push=new BasicResponseHandler();
HttpPost postMethod_push=new HttpPost(link_push);
List<NameValuePair> nameValuePairs_push= new ArrayList<NameValuePair>(3);
nameValuePairs_push.add(newBasicNameValuePair("city_id","0000")));
nameValuePairs_push.add(new BasicNameValuePair("user_id","value"));
postMethod_push.setEntity(new UrlEncodedFormEntity(nameValuePairs_push));
String response_push=hc_push.execute(postMethod_push,res_push);
Log.v("Response for Push Notification",""+response_push);
在这些respones_push中,您将从服务器获得响应..试试这个..