//在Android中的官方链接网络,这个操作在子线程中操作,有try{}catc(){}防止出错,抓异常 <uses-permission android:name="android.permission.INTERNET" /> //有网络请求加权限String link ="http://www.jcodecraeer.com";//网络连接地址 URL url = new URL(link); HttpURLConnection connect = (HttpURLConnection) url.openConnection();//打开连接 //设置请求头信息,一般不用设置 connect.setRequestProperty("User-Agent", "Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0)"); //设置请求方式,里面的字符串一定要大写,一般有GET,和POST请求方式 connect.setRequestMethod("GET");//OPTIONS, GET, HEAD, POST, PUT, DELETE, TRACE, PATCH connect.setConnectTimeout(1000);//设置链接超时时长,一般不用设置 connect.setReadTimeout(1000);//设置解析超时时长,最好设置一下,严谨if(connect.getResponseCode()==HttpURLConnection.HTTP_OK) {//链接码是不是请求成功了,一般请求成功是200的请求码
//从网络上获取输入流,剩下的就是你解析流获取数据了}InputStream inputStream = connect.getInputStream();
volley的请求方式,框架的好处是会有缓存,步骤简单等等1. 创建一个RequestQueue对象。
2. 创建一个StringRequest对象。
3. 将StringRequest对象添加到RequestQueue里面。
RequestQueue mQueue = Volley.newRequestQueue(context);
mQueue.add(stringRequest); //添加到请求网络队列
- StringRequest stringRequest = new StringRequest("http://www.baidu.com",
- new Response.Listener<String>() {
- @Override
- public void onResponse(String response) {
- Log.d("TAG", response);
- }
- }, new Response.ErrorListener() {
- @Override
- public void onErrorResponse(VolleyError error) {
- Log.e("TAG", error.getMessage(), error);
- }
- });
//post的请求//还有区别于StringRequest的方式,JsonObjectRequest,后面都是把这个new出来的对象添加到队列里
- StringRequest stringRequest = new StringRequest(Method.POST, url, listener, errorListener) {
- @Override
- protected Map<String, String> getParams() throws AuthFailureError {
- Map<String, String> map = new HashMap<String, String>();
- map.put("params1", "value1");
- map.put("params2", "value2");
- return map;
- }
- };
- JsonObjectRequest jsonObjectRequest = new JsonObjectRequest("http://m.weather.com.cn/data/101010100.html", null,
- new Response.Listener<JSONObject>() {
- @Override
- public void onResponse(JSONObject response) {
- Log.d("TAG", response.toString());
- }
- }, new Response.ErrorListener() {
- @Override
- public void onErrorResponse(VolleyError error) {
- Log.e("TAG", error.getMessage(), error);
- }
- });
//还有区别于StringRequest,JsonObjectRequest的ImageRequest, 不过很少有人用,,后面都是把这个new出来的对象添加到队列里
- ImageRequest imageRequest = new ImageRequest(
- "http://developer.android.com/images/home/aw_dac.png",
- new Response.Listener<Bitmap>() {
- @Override
- public void onResponse(Bitmap response) {
- imageView.setImageBitmap(response);
- }
- }, 0, 0, Config.RGB_565, new Response.ErrorListener() {
- @Override
- public void onErrorResponse(VolleyError error) {
- imageView.setImageResource(R.drawable.default_image);
- }
- });
//还有等下自己补
网络连接请求
最新推荐文章于 2022-09-23 20:52:52 发布