package baway.com.httpclientforpostrequest;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import org.apache.http.HttpResponse;
import org.apache.http.HttpStatus;
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 java.io.IOException;
import java.io.InputStream;
import java.util.ArrayList;
import java.util.List;
在build.gradle 中添加代码:
android {
useLibrary 'org.apache.http.legacy'
}
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
public void btnHttpClientPost(View view) {
new Thread() {
@Override
public void run() {
super.run();
httpClientPostReqeust("ed1088c0c4ac34c42a270fabf0de9b5a");
}
}.start();
}
private void httpClientPostReqeust(String key) {
try {
//默认 取消对HttpClient的一个支持
//1.打开浏览器
HttpClient httpclient = new DefaultHttpClient();
//2.填下地址
HttpPost httpPost = new HttpPost("http://v.juhe.cn/WNXG/city");
//设置请求参数
List<BasicNameValuePair> paramters = new ArrayList<>();
//只是添加一个了参数
//paramters.add(new BasicNameValuePair("menu", menu));
paramters.add(new BasicNameValuePair("key", key));
httpPost.setEntity(new UrlEncodedFormEntity(paramters));
HttpResponse execute = httpclient.execute(httpPost);
int code = execute.getStatusLine().getStatusCode();
if (code == HttpStatus.SC_OK) {
InputStream inputStream = execute.getEntity().getContent();
String json = Utils.Upec(inputStream);
System.out.println("http post 请求结果 : " + json);
}
} catch (IOException e) {
e.printStackTrace();
}
}
}