httpClient使用post请求抓取数据出现异常alert: internal_error

使用HttpClient去抓取网站数据包,出现了javax.net.ssl.SSLException: Received fatal alert: internal_error,异常只打印了这句话,在抓取其他网站的数据使用没问题,可以抓这个网站post请求就出现了这个问题,在执行HttpResponse httpResponse = httpClient.execute(httpRequest); 出现这个问题,大部分post都是没问题的图片说明,报错信息就这么多,后面的就是业务代码了,抓取其他网站是post,get都是没问题,这个网站一post就是出问题了,一直报这个错误,卡在这里很久了,使用原生的post又没有问题,可是这个封装的post也是原生的基础上封装的,大部分都是没问题,请求这个网站就是有问题,求大佬解惑。

1个回答

这是https请求报错,你应该是http请求,改成https就好

qq_40605994
qq_40605994 不是哦,抓取的就是https的,其他https没问题,可是抓这几个网站九出现问题了,望大佬解答一二
7 个月之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
.NET后台 httpclient 如何post请求获取返回的数据
我目前在做一个支付接口,参数已经编码成base64 另外有一个URL链接 , 我在httpclient post请求数据没有获取到响应的值,有没有大虾写一个示例啊? ![图片说明](https://img-ask.csdn.net/upload/201501/13/1421131638_163499.png)
关于httpclient用法, post提交,抓取数据不全
请教下面纠结的问题: 我用httpclient,post提交参数,抓取指定检索到的的数据(分多个页面,一个页面一次提交请求),大部分抓取的数据都是全的,大概抓取了100左右页面数据,就开始有一页面的数据不全,断断续续,不全的数据是:没有我指定参数提交的检索到的数据(只有静态页面的数据,即:没有业务数据),但是请求返回来的状态是200,也获取不到异常,纠结了好几天;代码: public String clientPost(String urll, String htmlbody) { String[] repParams = htmlbody.split("&"); List<NameValuePair> data = new ArrayList<NameValuePair>(); HttpPost post = new HttpPost(urll); for (String param : repParams) { data.add(new BasicNameValuePair(param.substring(0, param.indexOf("=")), param.substring( param.indexOf("=") + 1, param.length()))); } try { // 参数 post.setEntity(new UrlEncodedFormEntity(data, "utf-8")); // execute post HttpResponse response = httpClient.execute(post); if (response.getStatusLine().getStatusCode() == 200) { a++; System.out.println("第:" + a + "次请求成功"); HttpEntity entity = response.getEntity(); BufferedReader read = new BufferedReader(new InputStreamReader( entity.getContent(), "utf-8")); String currentLine; System.out.println("entity.getContent:" + entity.getContent().toString().length()); StringBuffer buff = new StringBuffer(); while ((currentLine = read.readLine()) != null) { buff.append(currentLine); } System.out.println("buff长度:" + buff.length()); if (buff.length() < 60000) { //数据不全判断 int i = 1; clientPost(urll, htmlbody); System.out.println("第" + (a - i) + "页请求了" + (++i) + "次"); } else { String urlContent = post.getURI().getRawPath() + "\r\n" + post.getRequestLine().toString() + "\r\n" + displayInfo(new UrlEncodedFormEntity(data, "utf-8").getContent()); logContent(urlContent, buff.toString(), a + ".html"); System.out.println("buff:--------------" + buff.toString().length()); return buff.toString(); } } } catch (UnsupportedEncodingException e) { e.printStackTrace(); logNetErr(e); } catch (ClientProtocolException e) { e.printStackTrace(); logNetErr(e); } catch (IOException e) { e.printStackTrace(); logNetErr(e); } finally { post.releaseConnection(); httpClient.getConnectionManager().closeExpiredConnections(); } return null; } 还请各位碰到这样的问题指教下:
java中使用httpclient post请求时报空指针异常
``` maven : <dependency> <groupId>org.apache.httpcomponents</groupId> <artifactId>httpclient</artifactId> <version>4.5.2</version> </dependency> ``` 相关代码: ``` HttpPost httppost = new HttpPost("http://localadmin/xxxxx"); List<NameValuePair> list = new ArrayList<NameValuePair>(); list.add(new BasicNameValuePair("identityNum","xxxxx")); list.add(new BasicNameValuePair("channel","YT")); list.add(new BasicNameValuePair("userId","78652109462")); list.add(new BasicNameValuePair("userName","xxxxx")); list.add(new BasicNameValuePair("realName","xxxxx")); UrlEncodedFormEntity entity ; try { entity = new UrlEncodedFormEntity(list, "utf-8"); httppost.setEntity(entity); ...... ``` 调试发现: ``` 在 super(URLEncodedUtils.format(parameters, charset != null?charset:HTTP.DEF_CONTENT_CHARSET.name()), ContentType.create("application/x-www-form-urlencoded", charset));处报 Method threw 'java.lang.NullPointerException' exception. Cannot evaluate org.apache.http.client.entity.UrlEncodedFormEntity.toString() ``` 有同学遇到过吗?
httpclient中post和get请求
POST请求: new UrlEncodedFormEntity(params, "UTF-8")是不是只能用于post请求 URLEncodedUtils.format(params, "UTF-8")是不是只能用于get请求 还有能不能帮我写一个get请求的例子。 里面有涉及有设置参数的。 如:httpget get = new httpget(); get.setXXX(); httpresponse response = httpclient.execute(get);
httpclient的post请求 struts2接收
android端使用了httpclient的post,其中有一个HashMap<String, String> contentMap参数传给应用服务器端。服务器端使用了struts2框架,在服务器端的action类里面同样定义了一个HashMap<String, String> contentMap接收请求参数的,但却报WARN - Error setting expression 'contentMap' with value '[Ljava.lang.String;@7e662f8b' 错误。struts2自动将hashMap转为string了,请问各位大神此情况应该怎么处理?
httpclient怎么抓取最终跳转的网站数据?
公司要做个内部系统,抓取某个网站的数据,而那个网站是抓取淘宝的数据。 其中有个页面很复杂,搜索关键词后,跳转到当前页面,当前页面有个javascript 跳转淘宝请求数据。 (当我在他们网站搜索时,他们 是抓取淘宝数据的缓存到自己的网站,然后展现出来。 当我直接在地址栏拼接他们获取数据的地址时,发生了跳转,跳到淘宝去了。) **重点那个js的那个地址是他们网站的地址,然后再跳转到淘宝请求数据的** **我的httpclient怎么抓到跳转的最终页面,也就是那个全是json数据的页面?** ![地址栏拼接参数跳转的最终页面](https://img-ask.csdn.net/upload/201503/24/1427197301_154936.png) 我自己的httpclient 抓取的静态方法如下: ``` public String reqget(String url,String params){ String paramsencode=null; HttpClient client=new DefaultHttpClient(); //获得服务器保存的coockie String cookieStr = ""; List<Cookie> list = cs.getCookies(); for (Cookie cookie : list) { cookieStr += cookie.getName() + "=" + cookie.getValue() + ";"; } if(params!=""&&params!=null){ //paramsencode = URLEncoder.encode(params, "GBK"); url=url+"?"+params; } //封装Get请求 HttpGet get=new HttpGet(url); get.setHeader("Cookie", cookieStr); HttpResponse response; try { //提交get请求 response=client.execute(get); //通过响应的状态编码 判断请求是否成功提交 if(response.getStatusLine().getStatusCode()==200) { //获得服务器端的响应结果 HttpEntity respEntity= response.getEntity(); String respStr=EntityUtils.toString(respEntity,"GBK"); return respStr; } //prgDlg.dismiss(); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } return null; } ```
httpclient 发送post请求(https),请求体为xml的字符串类型,获取不到数据
![图片说明](https://img-ask.csdn.net/upload/201607/15/1468574841_890886.png) 用fiddler发送请求可以获取到参数,但是用httpclient返回500;求解答 (下面是我的部分代码) ProtocolSocketFactory fcty = new MySecureProtocolSocketFactory(); Protocol.registerProtocol("https", new Protocol("https", fcty, 443)); String response = null; HttpClient client = new HttpClient(); PostMethod postMethod = new PostMethod(url); postMethod.getParams().setParameter( HttpMethodParams.HTTP_CONTENT_CHARSET, "UTF-8"); // 设置Post数据 if (!params.isEmpty()) { String data = "<?xml version=\"1.0\" encoding=\"utf-8\"?><EntityPreMethod><Method>" + params.get("Method") + "</Method><Parameters>" + params.get("Parameters") + "</Parameters><AccessId>******</AccessId></EntityPreMethod>"; System.out.println(data); postMethod.setRequestEntity(new StringRequestEntity(data, "text/xml", "gbk")); postMethod.addRequestHeader("Authorization", "Bearer " + this.getAccessToken()); postMethod.setRequestHeader("Content-Type", "text/xml"); } try { int statusCode = client.executeMethod(postMethod); System.out.println(statusCode); if (statusCode == HttpStatus.SC_OK) { response = postMethod.getResponseBodyAsString();
HttpClient的Post请求失败(form表单参数包含中文)
我最近在使用HttpClient通过Post方式发送form表单提交请求,但是,在使用NameValuePair[] 拼写form提交参数的时候,有一些参数名包含了中文。我在测试时候发现,如果参数名中不包含中文,则该参数的值能够成功请求过去。但是,如果参数中包含中文,则请求参数值传递后不成功。 我当时,对参数名称进行了编码集的修改,但是,无任何效果。Post请求传递的是字节流,应该和编码集无关,所以一时想不出到底是哪里除了问题,请各位大侠帮帮忙!谢谢! 以下是我的代码片段: ``` HttpClient client = new HttpClient(); // 从会话中取出cookie信息并设置到client对象中 client.getState().addCookies(cookie); // 创建GetMethod用于获取所有咨询列表信息 String url="http://A.."; PostMethod listPost = new PostMethod(url); // 拼写参数 NameValuePair[] body = new NameValuePair[] { new NameValuePair("ctl00产品性质","01-high"), new NameValuePair("ctl00product_name","product01" )}; Part[] parts=new Part[ body.length]; for (int i = 0; i < body.length; i++) { parts[i]=new StringPart(body[i].getName(), StringUtils.isNotBlank(body[i].getValue())?body[i].getValue():"","UTF-8"); } listPost.getParams().setParameter(HttpMethodParams.HTTP_CONTENT_CHARSET,"UTF-8"); listPost.setRequestEntity(new MultipartRequestEntity(parts,listPost.getParams())); listPost.setRequestHeader("Accept", "text/html, application/xhtml+xml, */*"); client.executeMethod(listPost); String reString = listPost.getResponseBodyAsString(); System.out.println(reString); if (listPost.getStatusCode() == 200) { return true; } ```
fiddler 怎么监听HttpClient发送的请求
我用HttpClient模拟浏览器发送请求,但是fiddler 好像监听不到 HttpClient 发送的请求 我用的是eclipse 有人说 用fiddler 上的那个十字标点中eclipse就行,但是我点了 也 没用,我监听全局 fiddler也监听不了 HttpClient的请求
Httpclient请求JSON数据
使用httpclient去请求一个URL,返回的就是一个很长的JSON字符串,大约有10M。这种数据量会不会比较大?
httpclient的post方式请求,收不到请求数据
HttpClient client = new HttpClient(); PostMethod post = new PostMethod(url); post.setRequestHeader("content-type", "application/x-www-form-urlencoded"); NameValuePair[] pare = new NameValuePair[]{new NameValuePair("class","FtpAgereementInfoCache")}; post.setRequestBody(pare); client.executeMethod(post); 在另请求的jsp中用String[] className = request.getParameterValues("class");获取数据得到的是null, 不过有些门户可以收到,有些门户收不到。为什么????
org.apache.http.NoHttpResponseException: liuyan.people.com.cn:80 failed to respond
需要对这个页面(http://liuyan.people.com.cn/threads/list?fid=565)进行设计采集程序,由于“加载更多”就是当页最后一个ID,如: http://liuyan.people.com.cn/threads/list?fid=565 的JSON数据页面为 http://liuyan.people.com.cn/threads/queryThreadsList?fid=565&lastItem=0 JSON数据最后一个TID是7127843,那第二页即是 http://liuyan.people.com.cn/threads/queryThreadsList?fid=565&lastItem=7127843 JSON数据最后一个TID是7125108,那第三页即是 http://liuyan.people.com.cn/threads/queryThreadsList?fid=565&lastItem=7125108 依此类推,当responseData中数据条目小于10条或空时,即结束。 以下代码会采集切换5~6页后,在执行DealjsonData()的response = httpClient.execute(httpPost);后报错org.apache.http.NoHttpResponseException: liuyan.people.com.cn:80 failed to respond 有什么好的解决办法,如测试通过就全部给分,谢谢。 以下是部分代码借鉴。 public static void gettitle(String tablename,String province,String cityname,String district,String leaderstype,String leadersname,String queryurl,String url,String proxyname,int proxyport) { String[] Pagecountsp = null; boolean tmptable=true; SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); HttpClient httpClient = null; HttpPost httpPost = null; HttpResponse response = null; try{ //WebClient webClient = new WebClient(BrowserVersion.CHROME,"45.63.121.157",80); DataBaseHelper dbh = new DataBaseHelper(tablename); dbh.onCreate(tablename); String tmp_tablename=dbh.onCreatetmp(tablename); //建立临时库和清空临时库 System.out.println(df.format(System.currentTimeMillis())+" "+"queryurl:"+queryurl+" tablename:"+tablename+" leadersname:"+leadersname); HtmlPage page=null; int pagenum=20; WebClient webClient = new WebClient(BrowserVersion.CHROME); ProxyConfig proxyConfig = new ProxyConfig(proxyname,proxyport); webClient.getOptions().setTimeout(3000000); //webClient.getOptions().setProxyConfig(proxyConfig); webClient.getOptions().setJavaScriptEnabled(false); webClient.getOptions().setCssEnabled(false); httpClient = HttpClients.createDefault(); httpPost = new HttpPost(queryurl);// 传入URL地址 httpPost.addHeader("Accept", "pplication/json, text/javascript, */*; q=0.01"); httpPost.addHeader("Accept-Encoding", "gzip, deflate");// 设置请求头 httpPost.addHeader("Accept-Language", "zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2");// 设置请求头 //httpPost.addHeader("Connection", "keep-alive");// 设置请求头 // httpPost.addHeader("Content-Length", "19");//设置请求头 //httpPost.addHeader("Content-Type", // "application/x-www-form-urlencoded; charset=UTF-8");// 设置请求头 httpPost.addHeader("Referer", "http://liuyan.people.com.cn/threads/list?fid=1079");// 设置请求头 //httpPost.addHeader("User-Agent", // "Mozilla/5.0 (Windows NT 6.1; W…) Gecko/20100101 Firefox/64.0");// 设置请求头 //httpPost.addHeader("X-Requested-With", "XMLHttpRequest");// 设置请求头 response = httpClient.execute(httpPost);// 获取响应 int statusCode = response.getStatusLine().getStatusCode(); //System.out.println("HTTP Status Code:" + statusCode); if (statusCode != HttpStatus.SC_OK) { //System.out.println("HTTP请求未成功!HTTP Status Code:");//+response.getStatusLine()) } HttpEntity httpEntity = response.getEntity(); String reponseContent = EntityUtils.toString(httpEntity); EntityUtils.consume(httpEntity); reponseContent=reponseContent.replaceAll("null", "0"); //System.out.println("响应内容:" + reponseContent); if(reponseContent.length()>20){ JSONObject dealList_findjson = JSONObject.fromObject(reponseContent); //System.out.println(dealList_findjson.toString()); //System.out.println("页数:"+dealList_findjson.getInt("ttlpage")+"记录数:"+dealList_findjson.getInt("ttlrow")); //int RecordCou = dealList_findjson.getInt("ttlrow"); //记录数 //int PageCou = dealList_findjson.getInt("ttlpage"); //页数 //int RecordCou = PageCou*pagenum; //预计最大记录总数,最后一页可能不是20 int DBcout=dbh.DBcount(tablename,leadersname); // //System.out.println(" 总页数:"+PageCou+" 记录数:"+RecordCou+" 数据库最早时间:"+DBnewstime+" 近1月内数据库条目:"+DB3cout+" 数据库总条目:"+DBcout); if(dealList_findjson.size()>0){ //在今天截止到表中最新时间的URL筛选如有新数据,由于可以直接调整WEB显示时间,不用增量模式,改用选择模式 System.out.println("开始采集:"); //System.out.println(doc.toString()); int continues=getListData(dbh,queryurl,url,dealList_findjson,tmp_tablename,tablename,province,cityname,district,leaderstype,leadersname); for (int i=0;continues>0;i++) //PageCount-&&i<2 { //continues代表只有不到10条数据,意味着结尾了,默认是0,否则tid=continues; //System.out.println(continues); reponseContent=DealjsonData(queryurl,continues); //调用读取XHR的JSON数据 if(reponseContent.indexOf("success")>1){ reponseContent=reponseContent.replaceAll("null", "0"); //System.out.println("响应内容:" + reponseContent); if(reponseContent.length()>20){ dealList_findjson = JSONObject.fromObject(reponseContent); //转化为json continues=getListData(dbh,queryurl,url,dealList_findjson,tmp_tablename,tablename,province,cityname,district,leaderstype,leadersname); //getListData对获取的JSON数据进行返回最后一条TID值,用于翻页,否则为0结束,插入数据。 //System.out.println("continues:" + continues+" i:" + i); } else{System.out.println("获取JSON数据异常l!");} } else{System.out.println("获取XHR的JSON数据失败!"); break;} } } dbh.Dedup_Add_table(tablename,tmp_tablename,province,leaderstype,leadersname,cityname,district,tmptable); //增加了临时的数据库,进行重删方式新增 } //20180114改为不删除临时tmp库,即无论tmp_zfcg0或tmpzfcg3;本来每次在onCreatetmp头部就会清空库truncate //dbh.TBdel(tmp_tablename); //删除临时库 webClient.close(); } catch(Exception e){ // TODO Auto-generated catch block e.printStackTrace(); StringWriter sw = new StringWriter(); e.printStackTrace(new PrintWriter(sw, true)); String strs = sw.toString(); log.error("url:"+url+" gettitle error:"+ strs); } } //获取XHR中的JSON数据 static String DealjsonData(String url,int pageNo) { String url1=url.substring(0,url.lastIndexOf("lastItem=")+9)+pageNo; System.out.println("url:"+url1); //ConnectionConfig connectionConfig = ConnectionConfig.custom().setBufferSize(4128).build(); //HttpClient httpClient = HttpClients.custom().setDefaultConnectionConfig(connectionConfig).build(); HttpClient httpClient = null; HttpPost httpPost = null; HttpResponse response = null; String reponseContent=null; try{ httpClient = HttpClients.createDefault(); httpPost = new HttpPost(url1);// 传入URL地址 httpPost.addHeader("Accept","pplication/json, text/javascript, */*; q=0.01"); httpPost.addHeader("Accept-Encoding", "gzip, deflate");// 设置请求头 httpPost.addHeader("Accept-Language","zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2");// 设置请求头 httpPost.addHeader("Connection", "keep-alive");// 设置请求头 // httpPost.addHeader("Content-Length", "19");//设置请求头 httpPost.addHeader("Content-Type","application/x-www-form-urlencoded; charset=utf-8");// 设置请求头 httpPost.addHeader("Referer", "http://liuyan.people.com.cn/threads/list?fid=1079");// 设置请求头 //httpPost.addHeader("User-Agent", // "Mozilla/5.0 (Windows NT 6.1; W…) Gecko/20100101 Firefox/64.0");// 设置请求头 //httpPost.addHeader("X-Requested-With", "XMLHttpRequest");// 设置请求头 response = httpClient.execute(httpPost);// 获取响应 int statusCode = response.getStatusLine().getStatusCode(); //System.out.println("HTTP Status Code:" + statusCode); if (statusCode != HttpStatus.SC_OK) { //System.out.println("HTTP请求未成功!HTTP Status Code:"+ response.getStatusLine()); } HttpEntity httpEntity = response.getEntity(); reponseContent = EntityUtils.toString(httpEntity); EntityUtils.consume(httpEntity); //System.out.println("响应内容:" + reponseContent); return reponseContent; } catch(Exception e){ // TODO Auto-generated catch block e.printStackTrace(); StringWriter sw = new StringWriter(); e.printStackTrace(new PrintWriter(sw, true)); String strs = sw.toString(); log.error("table_name:"+url+"url1:"+url1+" ListData error:"+ strs); return reponseContent; } }
httpclient 请求过快,导致数据抓取不全
最近自己在写一爬虫,用到了httpclient4.2.X ,如果开启过多的线程去抓取数据,有时候会出现返回数据不完全的情况。请问大家有没有什么好的解决方案?
java httpClient 发送httpGet 请求 特殊字符
java httpClient 发送httpGet 请求,请求url串中有特殊字符,如果不进行转义,如何发送呀??(服务端不是我的,如果转义了服务端验证不过) 补充:在浏览器地址栏直接复制url(带特殊字符),返回结果正确。
求解Android和servlet交互问题 httpClient 从服务器端读取数据,出现异常
<div class="iteye-blog-content-contain" style="font-size: 14px;"> <p>使用 httpClient 从服务器端读取数据,出现异常 : <br><span style="color: #ff0000;">Caused by: org.apache.http.ProtocolException: The server failed to respond with a valid HTTP response</span></p> <p><span style="color: #000000;">求指教 该怎么解决问题</span></p> </div>
用httpclient发送post请求内容为xml格式的!出现错误!请各位高手看下
用httpclient发送post请求内容为xml格式的 //提交的xml格式字符串 StringBuilder sb = new StringBuilder(); sb.append("<?xml version=\"1.0\" encoding=\"GBK\"?><EASYXML"); sb.append("version=\"1.0\"><REQUEST><GET_FEATURES featurelimit=\"10\" beginrecord=\"1\"><LAYER"); sb.append("name=\"L810\" id=\"机构\"><SPATIALQUERY subfields=\"机构名称:机构名称;\"'"); sb.append("dispfield=\"机构名称\" where=\"\"><SPATIALFILTER"); sb.append("relation=\"envelope_intersection\"><CIRCLE xx=\"489766.97021\" yy=\"315646.27148\""); sb.append("radius=\"21145.698156464744\""); sb.append("unit=\"meter\" /></SPATIALFILTER></SPATIALQUERY></LAYER></GET_FEATURES></REQUEST></EASYXML>"); //返回的xml错误 <EASYXML> <RESPONSE result="Error" msg="Error on line 1: &lt;Line 1, Column 52&gt;: XML-20201: (致命错误) 应是 name 而不是 =。" /> </EASYXML> 请各位高手看下!谢谢!
使用httpclient得到post请求的结果,但是post请的这种参数怎么搞
![图片说明](https://img-ask.csdn.net/upload/201610/10/1476086567_699407.png)
使用HttpClient通过Post发送数据,如何显示到Web界面上
以前没有接触过android和服务器的交互,在上网找了一个Demo 试着做了一下,在android上写的数据可以在后台打印输出,但是如何在Web服务器上显示出来,求指教。代码如下: ``` package com.example.m04_http02; import java.io.BufferedReader; import java.io.InputStreamReader; import java.util.ArrayList; import org.apache.http.HttpEntity; import org.apache.http.HttpResponse; import org.apache.http.NameValuePair; import org.apache.http.client.HttpClient; import org.apache.http.client.entity.UrlEncodedFormEntity; import org.apache.http.client.methods.HttpGet; import org.apache.http.client.methods.HttpPost; import org.apache.http.impl.client.DefaultHttpClient; import org.apache.http.message.BasicNameValuePair; import android.app.Activity; import android.os.Bundle; import android.util.Log; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; import android.widget.EditText; public class MainActivity extends Activity { private EditText nameText; private EditText pwdText; private Button button; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); nameText = (EditText) findViewById(R.id.nameText); pwdText = (EditText) findViewById(R.id.pwdText); button = (Button) findViewById(R.id.button1); button.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { // TODO Auto-generated method stub // 用户输入用户名密码, 然后通过Get方法发送给本地服务器 String name = nameText.getText().toString(); String pwd = pwdText.getText().toString(); // 运行线程,使用GET方法向本地服务器发送数据 GetThread getThread = new GetThread(name, pwd); getThread.start(); } }); } //子线程:通过GET方法向服务器发送用户名、密码的信息 class GetThread extends Thread { String name; String pwd; public GetThread(String name, String pwd) { this.name = name; this.pwd = pwd; } @Override public void run() { //用HttpClient发送请求,分为五步 //第一步:创建HttpClient对象 HttpClient httpClient = new DefaultHttpClient(); //注意,下面这一行中,我之前把链接中的"test"误写成了"text",导致调BUG调了半天没弄出来,真是浪费时间啊 String url = "http://192.168.1.112:8080/test.jsp?name=" + name+ "&password=" + pwd; //第二步:创建代表请求的对象,参数是访问的服务器地址 HttpGet httpGet = new HttpGet(url); try { //第三步:执行请求,获取服务器发还的相应对象 HttpResponse response = httpClient.execute(httpGet); //第四步:检查相应的状态是否正常:检查状态码的值是200表示正常 if (response.getStatusLine().getStatusCode() == 200) { //第五步:从相应对象当中取出数据,放到entity当中 HttpEntity entity = response.getEntity(); BufferedReader reader = new BufferedReader( new InputStreamReader(entity.getContent())); String result = reader.readLine(); Log.d("HTTP", "GET:" + result); } } catch (Exception e) { e.printStackTrace(); } } } } ``` ![图片说明](https://img-ask.csdn.net/upload/201506/18/1434630108_143388.png)
httpclient请求报错javax.net.ssl.SSLException
有没有大神知道如何解决 javax.net.ssl.SSLException: Received fatal alert: protocol_version
在中国程序员是青春饭吗?
今年,我也32了 ,为了不给大家误导,咨询了猎头、圈内好友,以及年过35岁的几位老程序员……舍了老脸去揭人家伤疤……希望能给大家以帮助,记得帮我点赞哦。 目录: 你以为的人生 一次又一次的伤害 猎头界的真相 如何应对互联网行业的「中年危机」 一、你以为的人生 刚入行时,拿着傲人的工资,想着好好干,以为我们的人生是这样的: 等真到了那一天,你会发现,你的人生很可能是这样的: ...
【JSON解析】浅谈JSONObject的使用
简介 在程序开发过程中,在参数传递,函数返回值等方面,越来越多的使用JSON。JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,同时也易于机器解析和生成、易于理解、阅读和撰写,而且Json采用完全独立于语言的文本格式,这使得Json成为理想的数据交换语言。 JSON建构于两种结构: “名称/值”对的集合(A Collection of name/va...
《MySQL 性能优化》之理解 MySQL 体系结构
本文介绍 MySQL 的体系结构,包括物理结构、逻辑结构以及插件式存储引擎。
程序员请照顾好自己,周末病魔差点一套带走我。
程序员在一个周末的时间,得了重病,差点当场去世,还好及时挽救回来了。
一名大专同学的四个问题
【前言】   收到一封来信,赶上各种事情拖了几日,利用今天要放下工作的时机,做个回复。   2020年到了,就以这一封信,作为开年标志吧。 【正文】   您好,我是一名现在有很多困惑的大二学生。有一些问题想要向您请教。   先说一下我的基本情况,高考失利,不想复读,来到广州一所大专读计算机应用技术专业。学校是偏艺术类的,计算机专业没有实验室更不用说工作室了。而且学校的学风也不好。但我很想在计算机领...
复习一周,京东+百度一面,不小心都拿了Offer
京东和百度一面都问了啥,面试官百般刁难,可惜我全会。
Java 14 都快来了,为什么还有这么多人固守Java 8?
从Java 9开始,Java版本的发布就让人眼花缭乱了。每隔6个月,都会冒出一个新版本出来,Java 10 , Java 11, Java 12, Java 13, 到2020年3月份,...
达摩院十大科技趋势发布:2020 非同小可!
【CSDN编者按】1月2日,阿里巴巴发布《达摩院2020十大科技趋势》,十大科技趋势分别是:人工智能从感知智能向认知智能演进;计算存储一体化突破AI算力瓶颈;工业互联网的超融合;机器间大规模协作成为可能;模块化降低芯片设计门槛;规模化生产级区块链应用将走入大众;量子计算进入攻坚期;新材料推动半导体器件革新;保护数据隐私的AI技术将加速落地;云成为IT技术创新的中心 。 新的画卷,正在徐徐展开。...
轻松搭建基于 SpringBoot + Vue 的 Web 商城应用
首先介绍下在本文出现的几个比较重要的概念: 函数计算(Function Compute): 函数计算是一个事件驱动的服务,通过函数计算,用户无需管理服务器等运行情况,只需编写代码并上传。函数计算准备计算资源,并以弹性伸缩的方式运行用户代码,而用户只需根据实际代码运行所消耗的资源进行付费。Fun: Fun 是一个用于支持 Serverless 应用部署的工具,能帮助您便捷地管理函数计算、API ...
讲真,这两个IDE插件,可以让你写出质量杠杠的代码
周末躺在床上看《拯救大兵瑞恩》 周末在闲逛的时候,发现了两个优秀的 IDE 插件,据说可以提高代码的质量,我就安装了一下,试了试以后发现,确实很不错,就推荐给大家。 01、Alibaba Java 代码规范插件 《阿里巴巴 Java 开发手册》,相信大家都不会感到陌生,其 IDEA 插件的下载次数据说达到了 80 万次,我今天又贡献了一次。嘿嘿。 该项目的插件地址: https://github....
Python+OpenCV实时图像处理
目录 1、导入库文件 2、设计GUI 3、调用摄像头 4、实时图像处理 4.1、阈值二值化 4.2、边缘检测 4.3、轮廓检测 4.4、高斯滤波 4.5、色彩转换 4.6、调节对比度 5、退出系统 初学OpenCV图像处理的小伙伴肯定对什么高斯函数、滤波处理、阈值二值化等特性非常头疼,这里给各位分享一个小项目,可通过摄像头实时动态查看各类图像处理的特点,也可对各位调参、测试...
2020年一线城市程序员工资大调查
人才需求 一线城市共发布岗位38115个,招聘120827人。 其中 beijing 22805 guangzhou 25081 shanghai 39614 shenzhen 33327 工资分布 2020年中国一线城市程序员的平均工资为16285元,工资中位数为14583元,其中95%的人的工资位于5000到20000元之间。 和往年数据比较: yea...
为什么猝死的都是程序员,基本上不见产品经理猝死呢?
相信大家时不时听到程序员猝死的消息,但是基本上听不到产品经理猝死的消息,这是为什么呢? 我们先百度搜一下:程序员猝死,出现将近700多万条搜索结果: 搜索一下:产品经理猝死,只有400万条的搜索结果,从搜索结果数量上来看,程序员猝死的搜索结果就比产品经理猝死的搜索结果高了一倍,而且从下图可以看到,首页里面的五条搜索结果,其实只有两条才是符合条件。 所以程序员猝死的概率真的比产品经理大,并不是错...
害怕面试被问HashMap?这一篇就搞定了!
声明:本文以jdk1.8为主! 搞定HashMap 作为一个Java从业者,面试的时候肯定会被问到过HashMap,因为对于HashMap来说,可以说是Java集合中的精髓了,如果你觉得自己对它掌握的还不够好,我想今天这篇文章会非常适合你,至少,看了今天这篇文章,以后不怕面试被问HashMap了 其实在我学习HashMap的过程中,我个人觉得HashMap还是挺复杂的,如果真的想把它搞得明明白...
毕业5年,我问遍了身边的大佬,总结了他们的学习方法
我问了身边10个大佬,总结了他们的学习方法,原来成功都是有迹可循的。
python爬取百部电影数据,我分析出了一个残酷的真相
2019年就这么匆匆过去了,就在前几天国家电影局发布了2019年中国电影市场数据,数据显示去年总票房为642.66亿元,同比增长5.4%;国产电影总票房411.75亿元,同比增长8.65%,市场占比 64.07%;城市院线观影人次17.27亿,同比增长0.64%。 看上去似乎是一片大好对不对?不过作为一名严谨求实的数据分析师,我从官方数据中看出了一点端倪:国产票房增幅都已经高达8.65%了,为什...
推荐10个堪称神器的学习网站
每天都会收到很多读者的私信,问我:“二哥,有什么推荐的学习网站吗?最近很浮躁,手头的一些网站都看烦了,想看看二哥这里有什么新鲜货。” 今天一早做了个恶梦,梦到被老板辞退了。虽然说在我们公司,只有我辞退老板的份,没有老板辞退我这一说,但是还是被吓得 4 点多都起来了。(主要是因为我掌握着公司所有的核心源码,哈哈哈) 既然 4 点多起来,就得好好利用起来。于是我就挑选了 10 个堪称神器的学习网站,推...
这些软件太强了,Windows必装!尤其程序员!
Windows可谓是大多数人的生产力工具,集娱乐办公于一体,虽然在程序员这个群体中都说苹果是信仰,但是大部分不都是从Windows过来的,而且现在依然有很多的程序员用Windows。 所以,今天我就把我私藏的Windows必装的软件分享给大家,如果有一个你没有用过甚至没有听过,那你就赚了????,这可都是提升你幸福感的高效率生产力工具哦! 走起!???? NO、1 ScreenToGif 屏幕,摄像头和白板...
阿里面试,面试官没想到一个ArrayList,我都能跟他扯半小时
我是真的没想到,面试官会这样问我ArrayList。
曾经优秀的人,怎么就突然不优秀了。
职场上有很多辛酸事,很多合伙人出局的故事,很多技术骨干被裁员的故事。说来模板都类似,曾经是名校毕业,曾经是优秀员工,曾经被领导表扬,曾经业绩突出,然而突然有一天,因为种种原因,被裁员了,...
大学四年因为知道了这32个网站,我成了别人眼中的大神!
依稀记得,毕业那天,我们导员发给我毕业证的时候对我说“你可是咱们系的风云人物啊”,哎呀,别提当时多开心啦????,嗯,我们导员是所有导员中最帅的一个,真的???? 不过,导员说的是实话,很多人都叫我大神的,为啥,因为我知道这32个网站啊,你说强不强????,这次是绝对的干货,看好啦,走起来! PS:每个网站都是学计算机混互联网必须知道的,真的牛杯,我就不过多介绍了,大家自行探索,觉得没用的,尽管留言吐槽吧???? 社...
良心推荐,我珍藏的一些Chrome插件
上次搬家的时候,发了一个朋友圈,附带的照片中不小心暴露了自己的 Chrome 浏览器插件之多,于是就有小伙伴评论说分享一下我觉得还不错的浏览器插件。 我下面就把我日常工作和学习中经常用到的一些 Chrome 浏览器插件分享给大家,随便一个都能提高你的“生活品质”和工作效率。 Markdown Here Markdown Here 可以让你更愉快的写邮件,由于支持 Markdown 直接转电子邮...
看完这篇HTTP,跟面试官扯皮就没问题了
我是一名程序员,我的主要编程语言是 Java,我更是一名 Web 开发人员,所以我必须要了解 HTTP,所以本篇文章就来带你从 HTTP 入门到进阶,看完让你有一种恍然大悟、醍醐灌顶的感觉。 最初在有网络之前,我们的电脑都是单机的,单机系统是孤立的,我还记得 05 年前那会儿家里有个电脑,想打电脑游戏还得两个人在一个电脑上玩儿,及其不方便。我就想为什么家里人不让上网,我的同学 xxx 家里有网,每...
史上最全的IDEA快捷键总结
现在Idea成了主流开发工具,这篇博客对其使用的快捷键做了总结,希望对大家的开发工作有所帮助。
阿里程序员写了一个新手都写不出的低级bug,被骂惨了。
这种新手都不会范的错,居然被一个工作好几年的小伙子写出来,差点被当场开除了。
谁是华为扫地僧?
是的,华为也有扫地僧!2020年2月11-12日,“养在深闺人不知”的华为2012实验室扫地僧们,将在华为开发者大会2020(Cloud)上,和大家见面。到时,你可以和扫地僧们,吃一个洋...
AI 没让人类失业,搞 AI 的人先失业了
最近和几个 AI 领域的大佬闲聊 根据他们讲的消息和段子 改编出下面这个故事 如有雷同 都是巧合 1. 老王创业失败,被限制高消费 “这里写我跑路的消息实在太夸张了。” 王葱葱哼笑一下,把消息分享给群里。 阿杰也看了消息,笑了笑。在座几位也都笑了。 王葱葱是个有名的人物,21岁那年以全额奖学金进入 KMU 攻读人工智能博士,累计发表论文 40 余篇,个人技术博客更是成为深度学习领域内风向标。 ...
2020年,冯唐49岁:我给20、30岁IT职场年轻人的建议
点击“技术领导力”关注∆每天早上8:30推送 作者|Mr.K 编辑| Emma 来源|技术领导力(ID:jishulingdaoli) 前天的推文《冯唐:职场人35岁以后,方法论比经验重要》,收到了不少读者的反馈,觉得挺受启发。其实,冯唐写了不少关于职场方面的文章,都挺不错的。可惜大家只记住了“春风十里不如你”、“如何避免成为油腻腻的中年人”等不那么正经的文章。 本文整理了冯...
作为一名大学生,如何在B站上快乐的学习?
B站是个宝,谁用谁知道???? 作为一名大学生,你必须掌握的一项能力就是自学能力,很多看起来很牛X的人,你可以了解下,人家私底下一定是花大量的时间自学的,你可能会说,我也想学习啊,可是嘞,该学习啥嘞,不怕告诉你,互联网时代,最不缺的就是学习资源,最宝贵的是啥? 你可能会说是时间,不,不是时间,而是你的注意力,懂了吧! 那么,你说学习资源多,我咋不知道,那今天我就告诉你一个你必须知道的学习的地方,人称...
立即提问