使用java的Http请求里的Url对象调用第三方接口返回的数据中文乱码 10C

URL url = new URL("http://apis.5118.com/morerank/baidupc");
// 将url 以 open方法返回的urlConnection 连接强转为HttpURLConnection连接 (标识一个url所引用的远程对象连接)
// 此时cnnection只是为一个连接对象,待连接中
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
// 设置连接输出流为true,默认false (post 请求是以流的方式隐式的传递参数)
connection.setDoOutput(true);
// 设置连接输入流为true
connection.setDoInput(true);
// 设置请求方式为post
connection.setRequestMethod("POST");
connection.setRequestProperty("Charsert", "UTF-8"); //设置请求编码
// post请求缓存设为false
connection.setUseCaches(false);
// 设置该HttpURLConnection实例是否自动执行重定向
connection.setInstanceFollowRedirects(true);
// 设置请求头里面的各个属性 (以下为设置内容的类型,设置为经过urlEncoded编码过的from参数)
// application/x-javascript text/xml->xml数据 application/x-javascript->json对象 application/x-www-form-urlencoded->表单数据
// ;charset=utf-8 必须要,不然妙兜那边会出现乱码【★★★★★】
//addRequestProperty添加相同的key不会覆盖,如果相同,内容会以{name1,name2}
connection.addRequestProperty("from", "sfzh"); //来源哪个系统
//setRequestProperty添加相同的key会覆盖value信息
//setRequestProperty方法,如果key存在,则覆盖;不存在,直接添加。
//addRequestProperty方法,不管key存在不存在,直接添加。

connection.setRequestProperty("Authorization", " APIKEY D9FD7C014E8E4367B2891EF5B4B493");
connection.setRequestProperty("Content-Type", "application/x-www-form-urlencoded");


 // 建立连接 (请求未开始,直到connection.getInputStream()方法调用时才发起,以上各个参数设置需在此方法之前进行)
 connection.connect();
 // 创建输入输出流,用于往连接里面输出携带的参数,(输出内容为?后面的内容)
 DataOutputStream dataout = new DataOutputStream(connection.getOutputStream());
 // 格式 parm = aaa=111&bbb=222&ccc=333&ddd=444
 String parm = "taskid="+taskid;
 System.out.println("传递参数:" + parm);
 // 将参数输出到连接
 dataout.writeBytes(parm);
 // 输出完成后刷新并关闭流
 dataout.flush();
 dataout.close(); // 重要且易忽略步骤 (关闭流,切记!)
 //System.out.println(connection.getResponseCode());
 // 连接发起请求,处理服务器响应  (从连接获取到输入流并包装为bufferedReader)
 BufferedReader bf = new BufferedReader(new InputStreamReader(connection.getInputStream(), "UTF-8"));
 String line;
 StringBuilder sb = new StringBuilder(); // 用来存储响应数据

 // 循环读取流,若不到结尾处
 while ((line = bf.readLine()) != null) {
     //sb.append(bf.readLine());
    String lin=new String(line.getBytes(), "utf-8");
     sb.append(lin);
 }
 bf.close();    // 重要且易忽略步骤 (关闭流,切记!)
 connection.disconnect(); // 销毁连接
  return sb.toString();

            返回的数据中文乱码使用java的Http请求里的Url对象调用第三方接口返回的数据中文乱码

8个回答

他那边返回的数据确定没问题吗

PostMethod method = new PostMethod("url");

method.addRequestHeader("Content-Type", "application/x-www-form-urlencoded; text/html; charset=UTF-8");

httpclient.executeMethod(method);

设置数据的编码是utf-8, BufferedReader reader = new BufferedReader(new InputStreamReader(conn.getInputStream(), "utf-8"));
https://blog.csdn.net/Java_WGE/article/details/79022920

设置下编码:

DefaultHttpClient client = new DefaultHttpClient();//获取DefaultHttpClient请求
HttpPost httpost = new HttpPost(url);//HttpPost将使用Post方式发送请求URL
JSONObject jsonObject = null;
httpost.setEntity(new StringEntity(outStr,"UTF-8"));//使用setEntity方法,将我们传进来的参数放入请求中
HttpResponse response = client.execute(httpost);//使用HttpResponse接收client执行httpost的结果
String result = EntityUtils.toString(response.getEntity(),"UTF-8");//HttpEntity转为字符串类型
jsonObject = JSONObject.fromObject(result);//字符串类型转为JSON类型
return jsonObject;

我的请求代码是这样的

    URL url = new URL("http://apis.5118.com/morerank/baidupc");
    // 将url 以 open方法返回的urlConnection  连接强转为HttpURLConnection连接  (标识一个url所引用的远程对象连接)
    // 此时cnnection只是为一个连接对象,待连接中
    HttpURLConnection connection = (HttpURLConnection) url.openConnection();
    // 设置连接输出流为true,默认false (post 请求是以流的方式隐式的传递参数)
    connection.setDoOutput(true);
    // 设置连接输入流为true
    connection.setDoInput(true);
    // 设置请求方式为post
    connection.setRequestMethod("POST");
    connection.setRequestProperty("Charsert", "UTF-8"); //设置请求编码
    // post请求缓存设为false
    connection.setUseCaches(false);
    // 设置该HttpURLConnection实例是否自动执行重定向
    connection.setInstanceFollowRedirects(true);
    // 设置请求头里面的各个属性 (以下为设置内容的类型,设置为经过urlEncoded编码过的from参数)
    // application/x-javascript text/xml->xml数据 application/x-javascript->json对象 application/x-www-form-urlencoded->表单数据
    // ;charset=utf-8 必须要,不然妙兜那边会出现乱码【★★★★★】
    //addRequestProperty添加相同的key不会覆盖,如果相同,内容会以{name1,name2}
    connection.addRequestProperty("from", "sfzh");  //来源哪个系统
    //setRequestProperty添加相同的key会覆盖value信息
    //setRequestProperty方法,如果key存在,则覆盖;不存在,直接添加。
    //addRequestProperty方法,不管key存在不存在,直接添加。

    connection.setRequestProperty("Authorization", " APIKEY D9FD7C014E8E4367B2891EF5B4B493");
    connection.setRequestProperty("Content-Type", "application/x-www-form-urlencoded");


     // 建立连接 (请求未开始,直到connection.getInputStream()方法调用时才发起,以上各个参数设置需在此方法之前进行)
     connection.connect();
     // 创建输入输出流,用于往连接里面输出携带的参数,(输出内容为?后面的内容)
     DataOutputStream dataout = new DataOutputStream(connection.getOutputStream());
     // 格式 parm = aaa=111&bbb=222&ccc=333&ddd=444
     String parm = "taskid="+taskid;
     System.out.println("传递参数:" + parm);
     // 将参数输出到连接
     dataout.writeBytes(parm);
     // 输出完成后刷新并关闭流
     dataout.flush();
     dataout.close(); // 重要且易忽略步骤 (关闭流,切记!)
     //System.out.println(connection.getResponseCode());
     // 连接发起请求,处理服务器响应  (从连接获取到输入流并包装为bufferedReader)
     BufferedReader bf = new BufferedReader(new InputStreamReader(connection.getInputStream(), "UTF-8"));
     String line;
     StringBuilder sb = new StringBuilder(); // 用来存储响应数据

     // 循环读取流,若不到结尾处
     while ((line = bf.readLine()) != null) {
         //sb.append(bf.readLine());
        String lin=new String(line.getBytes(), "utf-8");
         sb.append(lin);
     }
     bf.close();    // 重要且易忽略步骤 (关闭流,切记!)
     connection.disconnect(); // 销毁连接
      return sb.toString();

                返回的数据中文乱码

new bufferreader的时候设置编码格式

建议使用spring的restTemplate,底层实现配置为apcahe httpclient,简洁方便,定位问题更轻松!

服务器的编码格式是什么?

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
java使用http调用第三方接口,怎么解决实时性,要求实时性非常高?

## # java使用http调用第三方接口,怎么解决实时性,要求实时性非常高? 我现在做一个项目,需要调用别人接口获取数据,在我项目的前台显示,但对实时性非常高, 想要别人那边一改数据,我这边也就改了,最好是每秒调用一次;最好是两边的数据是同步的, 各位大神,帮帮忙吧!!!! 使用的是spring+springmvc+mybatis 调用接口方式是httpclient

接收第三方接口返回的数据

紧急求救。。。 有没有大神会写接口, 我大概需求就是 。写个接口接收第三方接口返回的数据

如题:要请求10多个第三方接口,整合接口返回的数据,怎么保证效率?求大大提供解决方案

同步一个一个去请求肯定效率会很慢,但是异步并发去请求,怎么获取所有数据都返回来的标识,也可能我想偏了

如何用JS调用接口,接口是一个URL,并能返回参数?

现在要在stroyline中的触发器里执行一段JS代码,这个执行的代码需要调用一段URL,并返回一个参数值“CA”

怎么获取第三方API接口回调返回的数据?

对接第三方API成功之后,第三方API会用去执行我们的回调地址返回数据给我们,我们要在回调地址页面去获取,要怎么去获取呢,就是不知道代码怎么写 ``` HttpWebRequest request = (HttpWebRequest)HttpWebRequest.Create(APIurl); HttpWebResponse response = (HttpWebResponse)request.GetResponse(); Stream stream = response.GetResponseStream(); Encoding encode = Encoding.UTF8; StreamReader reader = new StreamReader(stream, encode); string detail = reader.ReadToEnd(); ``` ![图片说明](https://img-ask.csdn.net/upload/201904/24/1556091380_934858.png) 这个APIUrl又该怎么填呢

webService接口调用失败

我是这样调用客户提供的接口的 ``` public List<Task> getOperationSystemData(Long userId) { String url = AppContext.getSystemProperty("anhui.webService.url"); Object[] response = null; try{ EndpointReference targetEPR = new EndpointReference(url); RPCServiceClient serviceClient = new RPCServiceClient(); GetNewTasks parm = new GetNewTasks(); parm.setUserID(String.valueOf(userId)); Object[] opAddArgs = new Object[]{parm.getUserID()}; Options options = serviceClient.getOptions(); options.setTo(targetEPR); QName opAdd =new QName("http://www.ustcsoft.com","getNewTasks"); Class[] returnTypes = new Class[] {Root.class}; response = serviceClient.invokeBlocking(opAdd,opAddArgs,returnTypes); }catch(Exception e){ log.info("获取业务系统待办异常", e); } ``` 但一直报错: ``` org.apache.axis2.AxisFault: Unmarshalling Error: unexpected element (uri:"", local:"arg0"). Expected elements are <{}UserID> at org.apache.axis2.util.Utils.getInboundFaultFromMessageContext(Utils.java:531) ``` google后给的答案是在方法参数中加@webParam(name="",targetNamespace="http://www.ustcsoft.com"),这样做了,还是没用,求大神指点

java实现接口回调数据

求教各位大神, 如何写接口给别人调用 。 最后保存别人返回的数据

求解httpClient发送请求访问接口时,有时能连接,有时连接不上

RT:求解httpClient发送请求访问接口时,有时能连接,有时连接不上,连接上了以后,下一次查询很快,求大神帮忙查看,感谢。 问题: 1、使用的是 org.apache.http.impl.client.CloseableHttpClient; 2、访问接口时,有时能连接,有时连接不上 备注: 1、因为公司的策略情况,使用的是http1.0的中的短连接。使用抓包工具看,连接不上的时候一直是TCP重连,待超过设置的超时时间后查询不到数据。 2、网上查看了有说超时时间太长,设置短了更查不到数据 3、应用部署使用tomcat和docker都试过,效果一样。 4、接口是提供给多个系统使用,只有我调用存在此类问题。 5、使用postman调用速度比代码调用快。 抓包内容 : ![图片说明](https://img-ask.csdn.net/upload/201908/19/1566215766_686306.png) httpClient代码 ``` public static String postRequest(String url, String jsonString){ CloseableHttpResponse httpResponse = null; HttpPost httpPost = new HttpPost(url); RequestConfig requestConfig = RequestConfig.custom() .setSocketTimeout(60000) .setConnectTimeout(60000) .build(); CloseableHttpClient httpClient = HttpClients.custom() .setDefaultRequestConfig(requestConfig) .build(); //使用http1.0的短连接 httpPost.setProtocolVersion(HttpVersion.HTTP_1_0); httpPost.addHeader(HTTP.CONN_DIRECTIVE, HTTP.CONN_CLOSE); httpPost.setConfig(requestConfig); httpPost.addHeader("Content-Type", "application/json"); StringEntity requestEntity = new StringEntity(jsonString, "utf-8"); httpPost.setEntity(requestEntity); try { httpResponse = httpClient.execute(httpPost); if (httpResponse.getStatusLine().getStatusCode() != HttpStatus.SC_OK) { return null; } HttpEntity entity = httpResponse.getEntity(); if (entity != null) { String resultStr = EntityUtils.toString(entity, "utf-8"); return resultStr; } else { return null; } } catch (Exception e) { logger.error("httpPost method exception handle-- > " + e); return null; } finally { if (httpResponse != null){ try { httpResponse.close(); } catch (IOException e) { logger.error("httpPost method IOException handle -- > " + e); } } if (httpClient != null) { try { httpClient.close(); } catch (IOException e) { logger.error("httpPost method exception handle-- > " + e); } } } } ```

apache soap调用第三方webservice短信接口报错(本人小白,求大侠指教)

完整代码如下 ``` /** 接口target url */ private static final String TARGET_URL = "http://duanxin.51fzh.com:5566/XjxSendMsg.asmx?op=ImmediatelySendByMS"; /** 接口xml命名空间*/ private static final String NAMESPACE_URI = "http://tempuri.org/"; /** 短信接口地址 */ private static final String MSG_URL = "http://duanxin.51fzh.com:5566/"; /** 请求调用的方法名称 */ private static final String METHOD_NAME = "ImmediatelySendByMS"; /** 输入参数sendSys为固定值xjxrzweb */ private static final String SEND_SYS = "xjxrzweb"; /** 发送用户:默认系统 */ private static final String SEND_USER = "系统"; /** * 请求短信接口,并返回调用信息 * * @param phoneNumber * 手机号码 * @param content * 模板短信占位符的值,例如@1@=abc, * 如果后期有其他模板需要两个输入参数 就是"@1@=abc,@2@=def" * @param templateNo * 模板短信编号 * @return String success:发送成功 fail:发送失败 */ public static String requestService(String phoneNumber, String content, String templateNo) { String result = ""; try { URL url = new URL(MSG_URL); // 构造Call对象 Call call = new Call(); call.setTargetObjectURI(TARGET_URL); call.setMethodName(METHOD_NAME); call.setEncodingStyleURI(Constants.NS_URI_SOAP_ENC); // 参数传递 call.setParams(getParameter(phoneNumber, content, templateNo)); // 发出调用 Response resp = call.invoke(url, ""); // 检查应答 if (!resp.generatedFault()) { Parameter ret = resp.getReturnValue(); result = ret.getValue().toString(); } else { Fault fault = resp.getFault(); System.out.println(" Fault Code = " + fault.getFaultCode()); } } catch (Exception e) { e.printStackTrace(); } return result; } /** * 参数组织 * @param phoneNumber * 手机号码 * @param content * 模板短信占位符的值,例如@1@=abc, * 如果后期有其他模板需要两个输入参数 就是"@1@=abc,@2@=def" * @param templateNo * 模板短信编号 * @return Vector<Parameter> * 线程安全性参数结合 */ private static Vector<Parameter> getParameter(String phoneNumber, String content, String templateNo) { Vector<Parameter> params = new Vector<Parameter>(); params.addElement(new Parameter("phoneNumber", String.class, phoneNumber, null)); params.addElement(new Parameter("content", String.class, content, null)); params.addElement(new Parameter("sendSys", String.class, SEND_SYS, null)); params.addElement(new Parameter("sendUser", String.class, SEND_USER, null)); params.addElement(new Parameter("templateNo", String.class, templateNo, null)); return params; } public static void main(String[] args) { System.out.println(requestService("14751608125", "@1@=12121", "JSM41168-0001")); } ``` 错误: SOAPException: faultCode=SOAP-ENV:Protocol; msg=Unsupported response content type &quot;text/html&quot;, must be: &quot;text/xml&quot;. 试了很多方法都没有用

java中如何获取异步接口的回调通知?

java中如何获取异步接口的回调通知?回调地址已经丢给接口方了,现在的问题是我调他的时候,如何获得这个异步回调的通知,有知道的大神,求告知用什么技术实现,原理我都懂,就是代码不会写。

http的post请求出现401的错误,怎么解决

import java.io.BufferedReader; import java.io.DataOutputStream; import java.io.InputStreamReader; import java.net.HttpURLConnection; import java.net.URL; import java.net.UnknownHostException; public class GetToken { public static final String POST_URL = "https://c2bt4.maxuscloud.com/oauth/token"; /** * 调用Post接口 */ public static void httpURLConnectionPOST(){ try { URL url = new URL(POST_URL); HttpURLConnection connection = (HttpURLConnection) url.openConnection(); connection.setDoOutput(true); connection.setDoInput(true); connection.setRequestMethod("POST"); // post请求缓存设为false connection.setUseCaches(false); // 设置该HttpURLConnection实例是否自动执行重定向 connection.setInstanceFollowRedirects(true); connection.setRequestProperty("Content-Type","application/json;charset=utf-8"); connection.connect(); DataOutputStream dataout = new DataOutputStream(connection.getOutputStream()); String param = "client_id=bc8f844701de11e98372fa163ed907b0&client_secret=cda0673501de11e98372fa163ed907b0&scope=read write&grant_type=client_credentials"; dataout.writeBytes(param); dataout.flush(); dataout.close(); BufferedReader bf = new BufferedReader(new InputStreamReader(connection.getInputStream(), "UTF-8")); String line; StringBuilder sb = new StringBuilder(); // 用来存储响应数据 // 循环读取流,若不到结尾处 while ((line = bf.readLine()) != null) { //sb.append(bf.readLine()); sb.append(line).append(System.getProperty("line.separator")); } bf.close(); // 重要且易忽略步骤 (关闭流,切记!) connection.disconnect(); // 销毁连接 System.out.println(sb.toString()); }catch (Exception e){ e.printStackTrace(); } } public static void main(String[] args) throws UnknownHostException { httpURLConnectionPOST(); } } ![图片说明](https://img-ask.csdn.net/upload/201906/10/1560155768_914838.jpg)

weblogic下,客户端方式调用axis包访问webserivce接口

weblogic下,客户端方式调用axis包访问webserivce接口,在tomcat下能正常访问,而在weblogic下面就会报以下错误。 ![图片说明](https://img-ask.csdn.net/upload/201512/22/1450781148_831468.jpg) 下面是调用接口代码: public String invokeWebservice(String wsurl, String funName, String arg) throws MalformedURLException, RemoteException { String rtnxml = ""; StringBuffer rtnxmlErr = new StringBuffer(); String timeout = "1800000"; try { Service service=new Service(); Call call=(Call) service.createCall(); call.setTargetEndpointAddress(new java.net.URL(wsurl)); call.setOperationName(new QName(wsurl, funName)); // 指定方法的命名空间 call.addParameter("s1", XMLType.XSD_STRING, ParameterMode.IN); call.setReturnType(XMLType.XSD_STRING); // 设置返回类型 rtnxml = (String) call.invoke(new Object[] { arg }); // System.out.println(rtnxml); } catch (Exception e) { e.printStackTrace(); rtnxmlErr.append("<?xml version='1.0' encoding='gbk'?>\n").append( "<DATAPACKET>\n").append( "<Result>" + e.toString() + "发生异常,读取终止!'</Result>\n").append( "<T0500></T0500>").append( "</DATAPACKET>\n"); rtnxml = rtnxmlErr.toString(); } return rtnxml; }

JAVA WEB项目如何获取API接口中的数据

比如这样的一个api,java怎么获得数据 上传订单备注 简要描述: 用户上传订单备注 请求URL: app-admin-SetMessage 请求方式: get 参数: 参数名 必选 类型 说明 token 是 string 验证 id 是 string 订单id msg 是 string 备注内容 最大文本长度 30 返回示例 { "msg": 1,//0 失败 "data": '更新成功', } 能写详细一点最好了,写个注释吧大神,小白看不明白

http 400 bad request解决

使用httpclient工具请求第三方https接口(部署在外网),只传一个string的参数,请求方式contentType application/x-www-form-urlencoded,post请求。 在本地Windows系统访问(不使用代理直接用外网访问外网)正常,部署到Linux服务器使用代理访问时, 一样的代码报错400 bad request ![图片说明](https://img-ask.csdn.net/upload/201907/25/1564023129_374560.png) 为什么呢?telnet是通的

调用天气接口,在main测试没问题,写到controller中就失败

调用天气接口,在main方法中执行没问题,可以访问成,但是换到controller中,前台传参到后台就失败。大佬们知道怎么回事吗? 天气接口: public static String GetWeatherData(String cityname) { StringBuilder sb=new StringBuilder(); try { String weather_url = "http://wthrcdn.etouch.cn/weather_mini?city="+cityname; URL url = new URL(weather_url); HttpURLConnection conn = (HttpURLConnection) url.openConnection(); conn.setRequestMethod("GET"); InputStream is = conn.getInputStream(); GZIPInputStream gzin = new GZIPInputStream(is); InputStreamReader isr = new InputStreamReader(gzin, "utf-8"); BufferedReader reader = new BufferedReader(isr); String line = null; while((line=reader.readLine())!=null) sb.append(line+" "); reader.close(); } catch (UnsupportedEncodingException e) { e.printStackTrace(); } catch (MalformedURLException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } return sb.toString(); } main方法调用返回成功 public static void main(String[] args){ String info = GetWeatherData("上海"); JSONObject json = JSONObject.fromObject(info); Object object = json.get("data"); JSONObject fromObject = JSONObject.fromObject(object); Object object1 = fromObject.get("yesterday"); Map<String,String> map = (Map)object1; map.put("ciyt", fromObject.getString("city")); List<Map<String,String>> list = new ArrayList<Map<String,String>>(); list.add(map); System.out.println(object.toString()); } 返回值: {"yesterday":{"date":"25日星期三","high":"高温 21℃","fx":"东南风","low":"低温 15℃","fl":"<![CDATA[4-5级]]>","type":"小雨"},"city":"上海","ganmao":"昼夜温差大,风力较强,易发生感冒,请注意适当增减衣服,加强自我防护避免感冒。","wendu":"17"} 但是由前端点击链接跳转到后台的controller的时候,访问就失败了 @RequestMapping(value = "/list", method = RequestMethod.GET) public ModelAndView userList(HttpServletRequest request) throws UnsupportedEncodingException { String info = service.GetWeatherData("上海"); JSONObject json = JSONObject.fromObject(info); Object object = json.get("data"); JSONObject fromObject = JSONObject.fromObject(object); Object object1 = fromObject.get("yesterday"); Map<String,String> map = (Map)object1; map.put("ciyt", fromObject.getString("city")); List<Map<String,String>> list = new ArrayList<Map<String,String>>(); list.add(map); ModelAndView mv = new ModelAndView("tianqi"); mv.addObject("list", list); return mv; } 返回值:{"status":1002,"desc":"invilad-citykey"} 实在不知道什么原因了。 前台一个a标签按钮: $('.huanjing').click(function(){ $('.myFrameName').attr('src','<%=rootPath %>huanjing/list'); });

测试报错,Connection refused: connect,求解?

代码: ``` public class ItfTest { /** * @param args */ public static void main(String[] args) { try { String out = testbiz(); System.out.println(out); } catch (IOException e) { e.printStackTrace(); } } public static String testbiz() throws HttpException, IOException { HttpClient httpClient = new HttpClient(); PostMethod post = new PostMethod( "http://localhost:8001/itf/OI_AddSaleByParameter"); // PostMethod post = new PostMethod( "https://rryx.sinovatech.com/itf/OI_QueryEShopOrder"); post.setRequestHeader("Content-Type", "application/x-www-form-urlencoded;charset=utf-8"); String key = "123321abc"; String channel="ch_shenxun"; Map<String, Object> req = new HashMap<>(); String instr ="{\"body\": \"{\\\"startTime\\\":\\\"2019-01-01 14:43:19\\\",\\\"endTime\\\":\\\"2019-01-12 15:14:42\\\",\\\"phone\\\":\\\"18309858042\\\"}\",\"head\": {} }"; /* String instr ="6351"; req.put("loginCode",instr);*/ Map<String, Object> header = new HashMap<>(); header.put("appId", channel); header.put("tid", UUID.randomUUID().toString()); header.put("timestamp", System.currentTimeMillis()); header.put("ver", "1.0"); Map<String, Object> reMap = new HashMap<>(); reMap.put("header", header); reMap.put("req", req); req.put("saleName","123"); req.put("goodIds","ff8080815e562c4d015e6103956700b6"); req.put("orderValue","1"); req.put("createName","管理员"); System.out.println(JSONObject.toJSON(reMap)); String reqdata = JSONObject.toJSONString(reMap); String sign = DigestUtils.md5Hex(reqdata + key); NameValuePair[] param = { new NameValuePair("sign", sign), new NameValuePair("reqdata", reqdata) }; post.setRequestBody(param); int result = httpClient.executeMethod(post); System.out.println("返回结果=" + result); InputStream in = post.getResponseBodyAsStream(); BufferedReader reader = new BufferedReader(new InputStreamReader(in)); StringBuilder sb = new StringBuilder(); String line = reader.readLine(); while (line != null) { sb.append(line); line = reader.readLine(); } reader.close(); return sb.toString(); } } //以上代码传参测试,但是运行后报错 java.net.ConnectException: Connection refused: connect at java.net.DualStackPlainSocketImpl.connect0(Native Method) at java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketImpl.java:79) at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350) at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206) at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:188) at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:172) at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392) at java.net.Socket.connect(Socket.java:589) at java.net.Socket.connect(Socket.java:538) at java.net.Socket.<init>(Socket.java:434) at java.net.Socket.<init>(Socket.java:286) at org.apache.commons.httpclient.protocol.DefaultProtocolSocketFactory.createSocket(DefaultProtocolSocketFactory.java:80) at org.apache.commons.httpclient.protocol.DefaultProtocolSocketFactory.createSocket(DefaultProtocolSocketFactory.java:122) at org.apache.commons.httpclient.HttpConnection.open(HttpConnection.java:707) at org.apache.commons.httpclient.HttpMethodDirector.executeWithRetry(HttpMethodDirector.java:387) at org.apache.commons.httpclient.HttpMethodDirector.executeMethod(HttpMethodDirector.java:171) at org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:397) at org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:323) at com.sinovatech.test.ItfTest.testbiz(ItfTest.java:95) at com.sinovatech.test.ItfTest.main(ItfTest.java:52) 求大神指点 ```

如何通过一个地址获取数据,使用JS处理逻辑

本人是做纯JAVA后台的,前端的只是稍懂。目前需求如下: 1,公司用的是第三方云数据库,目前用的是JS-SDK操作数据库。 2,公司要求提供接口给第三方APP对接。 3,对接方式:第三方通过我们提供的一个地址获取到数据。 4,类似于:http://www.baidu.com/index?getId=12345,对方就能得到ID=12345的一些数据。 5,由于是用JS操作后台的,也就是说这个地址操作的是JS文件里面的静态方法。 6,需要保证JS的安全性。 7,本人以前没做过APP这块,不太懂。麻烦路过的大神支支招。或者给小弟点其他思路的建议,谢谢!

萤石开发平台http接口出现301 Moved Permanently

我可以获取到accessToken, 官方API文档https://open.ys7.com/doc/zh/book/index/device_option.html 比如在调用c6h的预置位1,为什么会出现下附带的301页面被重定位的地址,https://open.ys7.com/api/lapp/device/preset/move,不是对这个地址请求吗, 或者查询其他的功能,都会出现301网页被重定向,求原因分析。 我用的语言是python34 我现在每次调各个功能,都是返回如下的重定向错误 <title>301 Moved Permanently</title> 301 Moved Permanently The requested resource has been assigned a new permanent URI. python3.4 代码如下: def devices_list():#调用预置位 global accessToken #accessToken='at.XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX' test_data1 = { 'accessToken':accessToken,'deviceSerial':'XXXXXX','channelNo':1,'index':1} test_data_urlencode1=urllib.parse.urlencode(test_data1).encode('utf-8') print(test_data_urlencode1) requrl1='https://open.ys7.com/api/lapp/device/preset/move'#请求调用预置位的地址 headerdata1={ 'Content-type': 'application/x-www-form-urlencoded', 'Host':'open.ys7.com' } conn1=http.client.HTTPConnection("open.ys7.com") conn1.request("POST",url=requrl1,body=test_data_urlencode1,headers=headerdata1) response1=conn1.getresponse() print(response1.status) print(response1.reason) jump=response1.headers['Location'] print(jump) res2=response1.read().decode('utf-8') print(res2) devices_list()

HttpURLConnection无法调用openConnection方法

如图: ![图片说明](https://img-ask.csdn.net/upload/201704/05/1491402972_88540.png) 调试的时候出现下面的错误: ![图片说明](https://img-ask.csdn.net/upload/201704/05/1491402983_26571.png) 想知道为什么,有什么解决办法吗? (用的IDEA) 谢谢各位!

C/C++学习指南全套教程

C/C++学习的全套教程,从基本语法,基本原理,到界面开发、网络开发、Linux开发、安全算法,应用尽用。由毕业于清华大学的业内人士执课,为C/C++编程爱好者的教程。

定量遥感中文版 梁顺林著 范闻捷译

这是梁顺林的定量遥感的中文版,由范闻捷等翻译的,是电子版PDF,解决了大家看英文费时费事的问题,希望大家下载看看,一定会有帮助的

YOLOv3目标检测实战:训练自己的数据集

YOLOv3是一种基于深度学习的端到端实时目标检测方法,以速度快见长。本课程将手把手地教大家使用labelImg标注和使用YOLOv3训练自己的数据集。课程分为三个小项目:足球目标检测(单目标检测)、梅西目标检测(单目标检测)、足球和梅西同时目标检测(两目标检测)。 本课程的YOLOv3使用Darknet,在Ubuntu系统上做项目演示。包括:安装Darknet、给自己的数据集打标签、整理自己的数据集、修改配置文件、训练自己的数据集、测试训练出的网络模型、性能统计(mAP计算和画出PR曲线)和先验框聚类。 Darknet是使用C语言实现的轻型开源深度学习框架,依赖少,可移植性好,值得深入探究。 除本课程《YOLOv3目标检测实战:训练自己的数据集》外,本人推出了有关YOLOv3目标检测的系列课程,请持续关注该系列的其它课程视频,包括: 《YOLOv3目标检测实战:交通标志识别》 《YOLOv3目标检测:原理与源码解析》 《YOLOv3目标检测:网络模型改进方法》 敬请关注并选择学习!

sql语句 异常 Err] 1064 - You have an error in your SQL syntax; check the manual that corresponds to your

在我们开发的工程中,有时候会报 [Err] 1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ------ 这种异常 不用多想,肯定是我们的sql语句出现问题,下面...

浪潮集团 往年的软件类 笔试题 比较详细的哦

浪潮集团 往年的软件类 笔试题 比较详细的哦

2019 AI开发者大会

2019 AI开发者大会(AI ProCon 2019)是由中国IT社区CSDN主办的AI技术与产业年度盛会。多年经验淬炼,如今蓄势待发:2019年9月6-7日,大会将有近百位中美顶尖AI专家、知名企业代表以及千余名AI开发者齐聚北京,进行技术解读和产业论证。我们不空谈口号,只谈技术,诚挚邀请AI业内人士一起共铸人工智能新篇章!

I2c串口通信实现加速度传感器和FPGA的交流

此代码能实现加速度传感器与FPGA之间的交流,从而测出运动物体的加速度。

Python可以这样学(第一季:Python内功修炼)

董付国系列教材《Python程序设计基础》、《Python程序设计(第2版)》、《Python可以这样学》配套视频,讲解Python 3.5.x和3.6.x语法、内置对象用法、选择与循环以及函数设计与使用、lambda表达式用法、字符串与正则表达式应用、面向对象编程、文本文件与二进制文件操作、目录操作与系统运维、异常处理结构。

微信公众平台开发入门

本套课程的设计完全是为初学者量身打造,课程内容由浅入深,课程讲解通俗易懂,代码实现简洁清晰。通过本课程的学习,学员能够入门微信公众平台开发,能够胜任企业级的订阅号、服务号、企业号的应用开发工作。 通过本课程的学习,学员能够对微信公众平台有一个清晰的、系统性的认识。例如,公众号是什么,它有什么特点,它能做什么,怎么开发公众号。 其次,通过本课程的学习,学员能够掌握微信公众平台开发的方法、技术和应用实现。例如,开发者文档怎么看,开发环境怎么搭建,基本的消息交互如何实现,常用的方法技巧有哪些,真实应用怎么开发。

机器学习初学者必会的案例精讲

通过六个实际的编码项目,带领同学入门人工智能。这些项目涉及机器学习(回归,分类,聚类),深度学习(神经网络),底层数学算法,Weka数据挖掘,利用Git开源项目实战等。

eclipseme 1.7.9

eclipse 出了新的eclipseme插件,官方有下载,但特慢,我都下了大半天(可能自己网速差)。有急需要的朋友可以下哦。。。

Spring Boot -01- 快速入门篇(图文教程)

Spring Boot -01- 快速入门篇 今天开始不断整理 Spring Boot 2.0 版本学习笔记,大家可以在博客看到我的笔记,然后大家想看视频课程也可以到【慕课网】手机 app,去找【Spring Boot 2.0 深度实践】的课程,令人开心的是,课程完全免费! 什么是 Spring Boot? Spring Boot 是由 Pivotal 团队提供的全新框架。Spring Boot...

HoloLens2开发入门教程

本课程为HoloLens2开发入门教程,讲解部署开发环境,安装VS2019,Unity版本,Windows SDK,创建Unity项目,讲解如何使用MRTK,编辑器模拟手势交互,打包VS工程并编译部署应用到HoloLens上等。

最简单的倍频verilog程序(Quartus II)

一个工程文件 几段简单的代码 一个输入一个输出(50Mhz倍频到100Mhz)

计算机组成原理实验教程

西北工业大学计算机组成原理实验课唐都仪器实验帮助,同实验指导书。分为运算器,存储器,控制器,模型计算机,输入输出系统5个章节

4小时玩转微信小程序——基础入门与微信支付实战

这是一个门针对零基础学员学习微信小程序开发的视频教学课程。课程采用腾讯官方文档作为教程的唯一技术资料来源。杜绝网络上质量良莠不齐的资料给学员学习带来的障碍。 视频课程按照开发工具的下载、安装、使用、程序结构、视图层、逻辑层、微信小程序等几个部分组织课程,详细讲解整个小程序的开发过程

面试了一个 31 岁程序员,让我有所触动,30岁以上的程序员该何去何从?

最近面试了一个31岁8年经验的程序猿,让我有点感慨,大龄程序猿该何去何从。

基于RSA通信密钥分发的加密通信

基于RSA通信密钥分发的加密通信,采用pycrypto中的RSA、AES模块实现

不同变质程度煤尘爆炸残留气体特征研究

为分析不同变质程度煤尘爆炸残留气体成分的特征规律,利用水平管道煤尘爆炸实验装置进行了贫瘦煤、肥煤、气煤、长焰煤4种不同变质程度的煤尘爆炸实验,研究了不同变质程度煤尘爆炸后气体残留物含量的差异,并对气体

设计模式(JAVA语言实现)--20种设计模式附带源码

课程亮点: 课程培训详细的笔记以及实例代码,让学员开始掌握设计模式知识点 课程内容: 工厂模式、桥接模式、组合模式、装饰器模式、外观模式、享元模式、原型模型、代理模式、单例模式、适配器模式 策略模式、模板方法模式、观察者模式、迭代器模式、责任链模式、命令模式、备忘录模式、状态模式、访问者模式 课程特色: 笔记设计模式,用笔记串连所有知识点,让学员从一点一滴积累,学习过程无压力 笔记标题采用关键字标识法,帮助学员更加容易记住知识点 笔记以超链接形式让知识点关联起来,形式知识体系 采用先概念后实例再应用方式,知识点深入浅出 提供授课内容笔记作为课后复习以及工作备查工具 部分图表(电脑PC端查看):

MySQL数据库面试题(2020最新版)

文章目录数据库基础知识为什么要使用数据库什么是SQL?什么是MySQL?数据库三大范式是什么mysql有关权限的表都有哪几个MySQL的binlog有有几种录入格式?分别有什么区别?数据类型mysql有哪些数据类型引擎MySQL存储引擎MyISAM与InnoDB区别MyISAM索引与InnoDB索引的区别?InnoDB引擎的4大特性存储引擎选择索引什么是索引?索引有哪些优缺点?索引使用场景(重点)...

软件测试2小时入门

本课程内容系统、全面、简洁、通俗易懂,通过2个多小时的介绍,让大家对软件测试有个系统的理解和认识,具备基本的软件测试理论基础。 主要内容分为5个部分: 1 软件测试概述,了解测试是什么、测试的对象、原则、流程、方法、模型;&nbsp; 2.常用的黑盒测试用例设计方法及示例演示;&nbsp; 3 常用白盒测试用例设计方法及示例演示;&nbsp; 4.自动化测试优缺点、使用范围及示例‘;&nbsp; 5.测试经验谈。

几率大的Redis面试题(含答案)

本文的面试题如下: Redis 持久化机制 缓存雪崩、缓存穿透、缓存预热、缓存更新、缓存降级等问题 热点数据和冷数据是什么 Memcache与Redis的区别都有哪些? 单线程的redis为什么这么快 redis的数据类型,以及每种数据类型的使用场景,Redis 内部结构 redis的过期策略以及内存淘汰机制【~】 Redis 为什么是单线程的,优点 如何解决redis的并发竞争key问题 Red...

手把手实现Java图书管理系统(附源码)

【超实用课程内容】 本课程演示的是一套基于Java的SSM框架实现的图书管理系统,主要针对计算机相关专业的正在做毕设的学生与需要项目实战练习的java人群。详细介绍了图书管理系统的实现,包括:环境搭建、系统业务、技术实现、项目运行、功能演示、系统扩展等,以通俗易懂的方式,手把手的带你从零开始运行本套图书管理系统,该项目附带全部源码可作为毕设使用。 【课程如何观看?】 PC端:https://edu.csdn.net/course/detail/27513 移动端:CSDN 学院APP(注意不是CSDN APP哦) 本课程为录播课,课程2年有效观看时长,大家可以抓紧时间学习后一起讨论哦~ 【学员专享增值服务】 源码开放 课件、课程案例代码完全开放给你,你可以根据所学知识,自行修改、优化

jsp+servlet入门项目实例

jsp+servlet实现班级信息管理项目

winfrom中嵌套html,跟html的交互

winfrom中嵌套html,跟html的交互,源码就在里面一看就懂,很简单

Java面试题大全(2020版)

发现网上很多Java面试题都没有答案,所以花了很长时间搜集整理出来了这套Java面试题大全,希望对大家有帮助哈~ 本套Java面试题大全,全的不能再全,哈哈~ 一、Java 基础 1. JDK 和 JRE 有什么区别? JDK:Java Development Kit 的简称,java 开发工具包,提供了 java 的开发环境和运行环境。 JRE:Java Runtime Environ...

python实现数字水印添加与提取及鲁棒性测试(GUI,基于DCT,含测试图片)

由python写的GUI,可以实现数字水印的添加与提取,提取是根据添加系数的相关性,实现了盲提取。含有两种攻击测试方法(高斯低通滤波、高斯白噪声)。基于python2.7,watermark.py为主

Xshell6完美破解版,亲测可用

Xshell6破解版,亲测可用,分享给大家。直接解压即可使用

你连存活到JDK8中著名的Bug都不知道,我怎么敢给你加薪

CopyOnWriteArrayList.java和ArrayList.java,这2个类的构造函数,注释中有一句话 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 public ArrayList(Collection&lt;? ...

相关热词 c# dbml文件 修改 c#遍历tree c# 能够控制单片机 c#对象写入数据库 c# 添加activex c#2005 json c# 数据库在云端 c# 字符串移位加密 c#禁用滚轮 c#实体类list去重复
立即提问