okhttp的get访问(加header)
使用okhttp来调用百度提供的频道新闻API(http://apistore.baidu.com/apiworks/servicedetail/688.html)
okhttp的添加源
compile'com.squareup.okhttp3:okhttp:3.2.0'
StringhttpUrl=StringhttpArg=StringrequestString=requestString=httpUrl++httpArgrequest(requestString)
publicvoidrequest(StringrequestString){OkHttpClientmOkHttpClient=newOkHttpClient();Request.BuilderrequestBuilder=newRequest.Builder().url(requestString).addHeader("apikey","592e46b62cfe201c68bf7d9f18db11ee");//可以省略,默认是GET请求requestBuilder.method("GET",null);Requestrequest=requestBuilder.build();Callmcall=mOkHttpClient.newCall(request);mcall.enqueue(newCallback(){@OverridepublicvoidonFailure(Callcall,IOExceptione){System.out.println("失败");getActivity().runOnUiThread(newRunnable(){@Overridepublicvoidrun(){swipeRefreshLayout.setRefreshing(false);}});}@OverridepublicvoidonResponse(Callcall,Responseresponse)throwsIOException{if(null!=response.cacheResponse()){Stringstr=response.cacheResponse().toString();Log.i("wangshu","cache---"+str);}else{Stringstring=response.body().string().toString();System.out.println(string);try{System.out.println(1);JSONObjectjsonObject=newJSONObject(string);JSONArrayjsonArray=jsonObject.getJSONObject("showapi_res_body").getJSONObject("pagebean").getJSONArray("contentlist");for(inti=0;i<=9;i++){XinWenBeanxinWenBean=newXinWenBean();xinWenBean.setTitle(jsonArray.getJSONObject(i).getString("title"));xinWenBeanList.add(xinWenBean);}}catch(JSONExceptione){e.printStackTrace();}Stringstr=response.networkResponse().toString();Log.i("wangshu","network---"+str);}getActivity().runOnUiThread(newRunnable(){@Overridepublicvoidrun(){swipeRefreshLayout.setRefreshing(false);recyclerView.setAdapter(newXinWenRecyclerViewAdapter(getActivity(),xinWenBeanList));}});}});}
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。