public class MainActivity extends Activity {
private EditText et_content;
private String path = "http://op.juhe.cn/robot/index";
private String getPath;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
et_content = (EditText) findViewById(R.id.et_content);
}
public void getMethod(View v) {
// get请求
// http://op.juhe.cn/robot/index?info=你好&key=您申请到的APPKEY
String content = et_content.getText().toString().trim();
// 定义请求路径
try {
getPath = path + "?info=" + URLEncoder.encode(content, "utf-8")
+ "&key=65e2651ed3d6c03fb7172df8059578b8";
} catch (UnsupportedEncodingException e1) {
e1.printStackTrace();
}
new Thread() {
public void run() {
try {
// 面向对象思想
// 创建客户端对象
HttpClient httpClient = new DefaultHttpClient();
// 创建get对象-指定路径
HttpGet httpGet = new HttpGet(getPath);
// 执行get请求,获取相应对象
HttpResponse httpResponse = httpClient.execute(httpGet);
// http 200 Ok
// 获取状态行
StatusLine statusLine = httpResponse.getStatusLine();
// 获取状态码
int statusCode = statusLine.getStatusCode();
if (statusCode == 200) {
// 获取请求实体对象
HttpEntity entity = httpResponse.getEntity();
// 获取实体内容
InputStream inputStream = entity.getContent();
String data = StreamUtils.parseStream(inputStream);
System.out.println("-----" + data);
}
} catch (Exception e) {
e.printStackTrace();
}
};
}.start();
}
public void postMethod(View v) {
// 请求参数放到实体内容中
new Thread() {
public void run() {
try {
// 定义一个请求客户端对象
HttpClient httpClient = new DefaultHttpClient();
// 定义post请求
HttpPost httpPost = new HttpPost(path);
// 创建存放键值对的集合
List<BasicNameValuePair> parameters = new ArrayList<BasicNameValuePair>();
//添加参数
parameters.add(new BasicNameValuePair("info", et_content
.getText().toString().trim()));
parameters.add(new BasicNameValuePair("key", "65e2651ed3d6c03fb7172df8059578b8"));
// 创建一个通过url编码过的表单对象
HttpEntity entity = new UrlEncodedFormEntity(parameters,
"utf-8");
// 设置post请求的实体对象
httpPost.setEntity(entity);
//执行post请求获取相应对象
HttpResponse httpResponse = httpClient.execute(httpPost);
if(httpResponse.getStatusLine().getStatusCode()==200){
InputStream inputStream = httpResponse.getEntity().getContent();
String data = StreamUtils.parseStream(inputStream);
System.out.println("----"+data);
}
} catch (Exception e) {
e.printStackTrace();
}
};
}.start();
}