{}Http client get post 方法

package com.example.a03_httpclient_post;

import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.util.Log;

import org.apache.http.HttpEntity;
import org.apache.http.HttpResponse;
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 org.apache.http.util.EntityUtils;

import java.io.UnsupportedEncodingException;
import java.util.ArrayList;
import java.util.List;

public class MainActivity extends AppCompatActivity {
private String path ="http://v.juhe.cn/toutiao/index";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

new Thread(){
@Override
public void run() {
super.run();

//1.得到HttpClient
HttpClient httpClient = new DefaultHttpClient();
//2.设置请求方式
HttpPost post = new HttpPost(path);

//3添加参数
List<BasicNameValuePair> list= new ArrayList<BasicNameValuePair>();

list.add(new BasicNameValuePair("key","444da40ec8ee43818073d7131c2ffa8f"));

//得到响应数据
try {
HttpEntity entity = new UrlEncodedFormEntity(list,"utf-8");

//5.设置参数给地址
post.setEntity(entity);

//6.执行
HttpResponse response = httpClient.execute(post);

//7.获取响应码
int statusCode = response.getStatusLine().getStatusCode();

if (statusCode == 200){
//9.得到值
HttpEntity entity1 = response.getEntity();

String string = EntityUtils.toString(entity1, "utf-8");

Log.i("TAG","string");




}



} catch (Exception e) {
e.printStackTrace();
}


}
}.start();


}
}

package com.example.asynctask_httpclient_;

import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.os.Handler;
import android.os.Message;
import android.widget.ImageView;

import java.io.InputStream;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLConnection;

public class ImageUtils {

private Handler handler =new Handler(){
@Override
public void handleMessage(Message msg) {
imageView1.setImageBitmap((Bitmap) msg.obj);
}
};



private ImageView imageView1;

public void setImageView(final String url, ImageView imageView) {
this.imageView1=imageView;

new Thread(){
@Override
public void run() {
super.run();


try {
URL url1 = new URL(url);

HttpURLConnection urlConnection = (HttpURLConnection) url1.openConnection();

urlConnection.setRequestMethod("GET");
// urlConnection.setConnectTimeout(10000);
// urlConnection.setReadTimeout(10000);

if (urlConnection.getResponseCode()==200){
InputStream inputStream = urlConnection.getInputStream();

Bitmap bitmap = BitmapFactory.decodeStream(inputStream);

Message message = new Message();
message.what=0;
message.obj=bitmap;
handler.sendMessage(message);


}else {

}


} catch (Exception e) {
e.printStackTrace();
}


}
}.start();
}
}





异步


package com.example.diyizhoulianxi.fragment;

import android.os.AsyncTask;
import android.os.Bundle;
import android.support.annotation. NonNull;
import android.support.annotation. Nullable;
import android.support.v4.app.Fragment;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ListView;

import com.example.diyizhoulianxi.R;
import com.example.diyizhoulianxi.adapter.FragmentListView_two;
import com.example.diyizhoulianxi.beans.YeMianBeans;
import com.google.gson.Gson;
import com.google.gson.reflect.TypeToken;

import org.apache.http.HttpEntity;
import org.apache.http.HttpResponse;
import org.apache.http.client.HttpClient;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.util.EntityUtils;

import java.io.IOException;
import java.lang.reflect.Type;
import java.util.ArrayList;
import java.util.List;

public class FragmentTwo extends Fragment {

private String path = "http://120.27.23.105/product/getProductCatagory?cid=1";
private ListView lv;
@Nullable
@Override
public View onCreateView( @NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
View view = inflater.inflate(R.layout. fragmentwo,container, false);

lv = view.findViewById(R.id. two_lv);

MyAsynctask myAsynctask = new MyAsynctask();
myAsynctask.execute( path);
return view;
}

class MyAsynctask extends AsyncTask<String,Void,String>{

@Override
protected void onPreExecute() {
super.onPreExecute();
}

@Override
protected String doInBackground(String... params) {

String string = "";
//请求数据 得到HttpClient

HttpClient httpClient = new DefaultHttpClient();

//得到请求方式
HttpGet httpGet = new HttpGet(params[ 0]);

//执行请求方式
try {
HttpResponse response = httpClient.execute(httpGet);

//得到响应吗 getStatusLine()得到所有响应头的信息 getStatusCode()得到响应码
int statusCode = response.getStatusLine().getStatusCode();

if (statusCode== 200){
//得到响应头的数据
HttpEntity entity = response.getEntity();

//定义数据的类型
string = EntityUtils. toString(entity, "utf-8");

Log. i( "TAG",string);
}
} catch (Exception e) {
e.printStackTrace();
}
return string;
}


@Override
protected void onPostExecute(String s) {
super.onPostExecute(s);

Log. i( "TAG",s);

Gson gson = new Gson();

YeMianBeans yeMianBeans = gson.fromJson(s, YeMianBeans. class);


List<YeMianBeans.DataBean> data = yeMianBeans.getData();

List<YeMianBeans.DataBean.ListBean> list1 = new ArrayList<>();

for ( int i = 0; i < data.size(); i++) {
List<YeMianBeans.DataBean.ListBean> list = data.get(i).getList();
//相同类型用listall
list1.addAll(list);
}

FragmentListView_two fragmentListView_two = new FragmentListView_two(list1,getActivity());
lv.setAdapter(fragmentListView_two);




}

@Override
protected void onProgressUpdate(Void... values) {
super.onProgressUpdate(values);
}
}
}




猜你喜欢

转载自blog.csdn.net/qq_41663420/article/details/80725489