androidhttpclient(如何获取 android httpclient)
本文目录
- 如何获取 android httpclient
- 用android的httpclient抓网页(GET)有的可以,有的网页抓不到,请求头设置了
- 如何使用androidhttpclient访问web服务
- android中httpclient怎么使用
- android里面可以使用HttpClient么
- httpclient android 怎么使用
如何获取 android httpclient
HttpClient是用来访问url地址的。简单的例子httpClient = new DefaultHttpClient();// 使用POST方法HttpPost method = new HttpPost("http://网址/service");// 设置参数List《NameValuePair》 params1 = new ArrayList《NameValuePair》();params1.add(new BasicNameValuePair("app_version", "1.0.0"));params1.add(new BasicNameValuePair("device_id", "aaa"));UrlEncodedFormEntity paramsEntity = new UrlEncodedFormEntity(params1, "UTF-8");method.setEntity(paramsEntity);// 执行HttpResponse response = httpClient.execute(method);// 请求成功if (HttpStatus.SC_OK == response.getStatusLine().getStatusCode()) {HttpEntity entity = response.getEntity();
用android的httpclient抓网页(GET)有的可以,有的网页抓不到,请求头设置了
可使用android自带的1. GET 方式传递参数//先将参数放入List,再对参数进行URL编码List《BasicNameValuePair》 params = new LinkedList《BasicNameValuePair》();params.add(new BasicNameValuePair("param1", "数据")); //增加参数1params.add(new BasicNameValuePair("param2", "value2"));//增加参数2String param = URLEncodedUtils.format(params, "UTF-8");//对参数编码String baseUrl = "服务器接口完整URL";HttpGet getMethod = new HttpGet(baseUrl + "?" + param);//将URL与参数拼接HttpClient httpClient = new DefaultHttpClient();try { HttpResponse response = httpClient.execute(getMethod); //发起GET请求 Log.i(TAG, "resCode = " + response.getStatusLine().getStatusCode()); //获取响应码 Log.i(TAG, "result = " + EntityUtils.toString(response.getEntity(), "utf-8"));//获取服务器响应内容} catch (ClientProtocolException e) { e.printStackTrace();} catch (IOException e) { e.printStackTrace();}2. POST方式 方式传递参数//和GET方式一样,先将参数放入Listparams = new LinkedList《BasicNameValuePair》();params.add(new BasicNameValuePair("param1", "Post方法"));//增加参数1params.add(new BasicNameValuePair("param2", "第二个参数"));//增加参数2try { HttpPost postMethod = new HttpPost(baseUrl);//创建一个post请求 postMethod.setEntity(new UrlEncodedFormEntity(params, "utf-8")); //将参数填入POST Entity中 HttpResponse response = httpClient.execute(postMethod); //执行POST方法 Log.i(TAG, "resCode = " + response.getStatusLine().getStatusCode()); //获取响应码 Log.i(TAG, "result = " + EntityUtils.toString(response.getEntity(), "utf-8")); //获取响应内容} catch (UnsupportedEncodingException e) { e.printStackTrace();} catch (ClientProtocolException e) { e.printStackTrace();} catch (IOException e) { e.printStackTrace();}
如何使用androidhttpclient访问web服务
1.服务器认证(Server Authentication)HttpClient处理服务器认证几乎是透明的,仅需要开发人员提供登录信息(login credentials)。登录信息保存在HttpState类的实例中,可以通过 setCredentials(String realm, Credentials cred)和getCredentials(String realm)来获取或设置。HttpClient内建的自动认证,可以通过HttpMethod类的setDoAuthentication(boolean doAuthentication)方法关闭,而且这次关闭只影响HttpMethod当前的实例。2.代理认证(proxy authentication)除了登录信息需单独存放以外,代理认证与服务器认证几乎一致。用 setProxyCredentials(String realm, Credentials cred)和 getProxyCredentials(String realm)设、取登录信息。3.认证方案(authentication schemes)是HTTP中规定最早的也是最兼容的方案,遗憾的是也是最不安全的一个方案,因为它以明码传送用户名和密码。它要求一个UsernamePasswordCredentials实例,可以指定服务器端的访问空间或采用默认的登录信息。
android中httpclient怎么使用
1.创建HttpClient对象,改对象可以用来多次发送不同的4.针对结果和异常做相应处理
android里面可以使用HttpClient么
Android有一个AndroidHttpClient,实现了HttpClient接口,但是已经标记为Deprecated,不鼓励使用了。因为Android鼓励开发者使用HttpURLConnection这一套(在java.net包名下)。在Android blog官网上有专门说过原因,感兴趣你可以搜一下。基本意思就是HttpURLConnection在Android下针对手机环境做过一些优化,而AndroidHttpClient已经不再维护。
httpclient android 怎么使用
/** * 通过Put方式发送请求 更新采集器信息 * @param url URL地址 * @param params 参数 * @return * @throws Exception */ public String httpPut(String json,String url, List《Parameter》 params, String tokenAuth,int type) throws Exception { String response = null; int timeoutConnection = YunTongXun.httpclienttime; int timeoutSocket = YunTongXun.httpclienttime; HttpParams httpParameters = new BasicHttpParams();// Set the timeout in milliseconds until a connection is established. HttpConnectionParams.setConnectionTimeout(httpParameters, timeoutConnection);// Set the default socket timeout (SO_TIMEOUT) // in milliseconds which is the timeout for waiting for data. HttpConnectionParams.setSoTimeout(httpParameters, timeoutSocket); // 构造HttpClient的实例 HttpClient httpClient = new DefaultHttpClient(httpParameters); HttpPut httpPost = new HttpPut(url); if (params.size()》=0) { //设置httpPost请求参数 if(type==2) { String jsstr = ""; System.out.println(jsstr); StringEntity s = new StringEntity(jsstr ,"utf-8"); s.setContentEncoding("UTF-8"); s.setContentType("text/json"); s.setContentEncoding(new BasicHeader(HTTP.CONTENT_TYPE, "application/json")); httpPost.setEntity(s); } httpPost.setHeader("Accept", "application/json"); httpPost.setHeader("Content-Type","application/json;charset=UTF-8"); } else if(type ==1) { httpPost.setEntity(new UrlEncodedFormEntity(buildNameValuePair(params),HTTP.UTF_8)); } } if(tokenAuth != null) httpPost.setHeader("Authorization", tokenAuth); //使用execute方法发送HTTP Post请求,并返回HttpResponse对象 HttpResponse httpResponse = httpClient.execute(httpPost); int statusCode = httpResponse.getStatusLine().getStatusCode(); if(statusCode==HttpStatus.SC_CREATED || statusCode == HttpStatus.SC_OK) { //获得返回结果 response = EntityUtils.toString(httpResponse.getEntity(),"utf-8"); if(response==null || response.length()《2) { System.out.println("{status_code:"+statusCode+"}"); return "{status_code:"+statusCode+"}"; } } else { response = EntityUtils.toString(httpResponse.getEntity(),"utf-8"); System.out.println(response); System.out.println("{status_code:"+statusCode+"}"); return "{status_code:"+statusCode+"}"; } return response; }
更多文章:
织梦模板网站空白(织梦后台生成首页是空白的,直接访问首页也是空白的,但是新建栏目预览栏目页没有问题,求专家!!!)
2024年7月24日 08:05
lookup函数(excel学习查找函数,如何能少的了lookup函数呢)
2024年7月9日 11:51
feels音标怎么写?she feels happy为什么不用feel
2024年6月25日 07:42
mysql删除数据库语句(mysql中怎么删除一个数据库(如何删除一个数据库))
2024年7月23日 15:19
为什么纳达尔跟德约科维奇只相差一年却感觉相差一代?如何看待德约科维奇美网对阵瓦林卡选择退赛
2024年5月17日 22:54
outofmemoryexception(System.OutOfMemoryException异常如何解决)
2024年7月19日 00:25
手机网址导航源码(那个网址导航网站源码好用,没有后面和安全问题,谢谢)
2024年5月20日 16:09
视图网官网 免费(谁能给我几个汽车三视图的网站越多越好如果满意追加)
2024年7月24日 10:06
spring诗歌(请专业的朋友帮忙找一首关于春天的英语诗歌)
2024年7月22日 08:21