您当前的位置: 首页 > 知识百科 > 微信公众号好测试号返回参数代码是什么?

微信公众号好测试号返回参数代码是什么?

时间:2023-07-01 14:05 阅读数:93 人阅读 分类:知识百科

  微信公众号好测试号返回参数代码是什么?怎么去实现微信公众号好测试号返回的设置,下边小编来为您介绍微信公众号好测试号返回参数的内容。供您参考。

  最近在忙微信公众号的开发,需要调用不少接口,其中s和post困扰了我四五天,期间还要维护之前的项目bug,所以压力不小

  Q1--微信开发中的s:

  言归正传,微信要求调用接口使用s协议,于是我一直在找s的原理和加密方式,最终在朋友的帮助下才知道,请求方不需要管s握手加密,只要url是s就行,换句话说,这是单向认证,只要验证服务器的真实*,而网银等需要U盾的s就是典型的双向认证了,这是第一点。

  Q1--微信开发中"errcode":"47001":

  第二,微信errcode=47001的JSON错误找了网上很多描述,大部分是JSON格式问题,直接用网上的校验工具就行了,而我却不是,还以为是自己写的Java提交请求工具有问题,最后各种尝试才确定是引号问题。前端大部分都是单引号,但微信接收我们提交的JSON是要双引号的,在java中,直接用"转义即可,如"{"touser":"asidgasdaidauudugdywdwud"}"对了,我是提交的JSON格式的字符串,用HttpClient(现在叫HttpComponents,Apache的)

  //requestUrl 请求的地址

  //requestMethod 请求的方法 get post

  //outputStr 需要上传到微信服务器上的数据 json 格式

  public static String Request(String requestUrl, String requestMethod,

  String outputStr) {

  String jsonStr = "";

  StringBuffer buffer = new StringBuffer();

  try {

  SSLContext sslcontext = SSLContext.getInstance("TLS");

  sslcontext.init(null, new TrustManager[] { myX509TrustManager },

  null);

  SSLSocketFactory ssf = sslcontext.getSocketFactory();

  URL url = new URL(requestUrl);

  HttpsURLConnection UrlConn = (HttpsURLConnection) url

  .openConnection();

  UrlConn.setSSLSocketFactory(ssf);

  UrlConn.setDoOutput(true);

  UrlConn.setDoInput(true);

  UrlConn.setUseCaches(true);

  // 是不是需要判断method的请求格式取决于自己的业务逻辑

  //if ("POST".equals(requestMethod)) {

  UrlConn.setRequestMethod(requestMethod);

  UrlConn.connect();

  // }

  if (null != outputStr) {

  OutputStream outputStream = UrlConn.getOutputStream();

  outputStream.write(outputStr.getBytes("UTF-8"));

  outputStream.close();

  }

  InputStream inputStream = UrlConn.getInputStream();

  InputStreamReader inputStreamReader = new InputStreamReader(

  inputStream, "utf-8");

  BufferedReader bufferedReader = new BufferedReader(

  inputStreamReader);

  String str = null;

  while ((str = bufferedReader.readLine()) != null) {

  buffer.append(str);

  }

  bufferedReader.close();

  inputStreamReader.close();

  inputStream.close();

  inputStream = null;

  UrlConn.disconnect();

  jsonStr = buffer.toString();

  } catch (ConnectException ce) {

  ce.printStackTrace();

  } catch (Exception e) {

  e.printStackTrace();

  }

  return jsonStr;

  }

  private static TrustManager myX509TrustManager = new X509TrustManager() {

  public X509Certificate[] getAcceptedIssuers() {

  return null;

  }

  public void checkServerTrusted(X509Certificate[] chain, String authType)

  throws CertificateException {

  }

  public void checkClientTrusted(X509Certificate[] chain, String authType)

  throws CertificateException {

  }

  };

  以上是小编整理的微信公众号好测试号返回参数的内容,希望以上内容能对您有帮助。如果您想了解到更多的微信素材,请多多关注微素达网。更多精彩内容欢迎您来。

相关推荐:

怎样用微信小程序赚钱背后隐藏着什么?

微信小程序对创业者的创业思路有哪些影响?

微信小程序潜伏哪些商机?