• <legend id='l0l93bpe'><style id='nvhq6apg'><dir id='4hb61eck'><q id='60m0gpbh'></q></dir></style></legend>
      <bdo id='imqt5z6x'></bdo><ul id='qkpkkbpz'></ul>
  • <i id='je0b5yrv'><tr id='78r317ql'><dt id='voy3k7gy'><q id='xukfleqi'><span id='hwx51kbp'><b id='cspi9j5v'><form id='f86d67oa'><ins id='pzx1thzp'></ins><ul id='1d20y85t'></ul><sub id='l48p3voc'></sub></form><legend id='0e8kh4le'></legend><bdo id='530x8t2x'><pre id='h4xyi9iw'><center id='yeymw5mx'></center></pre></bdo></b><th id='67js6e3p'></th></span></q></dt></tr></i><div id='lqb2ahiz'><tfoot id='aj3ub5za'></tfoot><dl id='x302rewl'><fieldset id='d00msxjd'></fieldset></dl></div>

      <small id='qwxqwcjw'></small><noframes id='hn6q50yp'>

      <tfoot id='iy5ho9yv'></tfoot>

      1. 欢迎来到入门教程网!

        JavaScript

        当前位置:主页 > 网络编程 > JavaScript >

        微信挑一挑java代码 微信挑一挑java代码怎么做

        来源:本站原创|时间:2023-04-02|栏目:JavaScript|点击:

        怎么用java代码把imei和uin取得微信数据库加密方法密码

        这还真是第一次写java程序。其实,一直是对java有偏见的。无奈,从BlackFeather那里知道了微信数据库加密方法,以及密码的获取方式。

        发现是基于hashmap的,本来吧,还是想用C或者其他语言来实现对hashmap的读取,可后来都失败了。要么就是太复杂了。于是,还是硬着头皮去把jdk装好,然后~~~开始各种百度。

        先用反编译出来的代码搭了个大体的轮廓。然后,自己各种加代码(考虑到一些问题,还是只贴出一些关键代码吧):

        加密方式是:hash(imeiuin).substring(0,7)

        public static void main(String[] args)

        {

        try

        {

        ObjectInputStream in = new ObjectInputStream(new FileInputStream(args[0]));

        Object DL = in.readObject();

        HashMap hashWithOutFormat = (HashMap)DL;

        ObjectInputStream in1 = new ObjectInputStream(new FileInputStream(args[1]));

        Object DJ = in1.readObject();

        HashMap hashWithOutFormat1 = (HashMap)DJ;

        String s = String.valueOf(hashWithOutFormat1.get(Integer.valueOf(258))); //取IMEI

        s=s+hashWithOutFormat.get(Integer.valueOf(1));//

        s=encode(s);//hash

        System.out.println("The Key is : "+s.substring(0,7));

        in.close();

        in1.close();

        }

        }

        微信内置浏览器怎么通过返回页面代码弹出跳转到其他浏览器要java代码的

        没有办法的.微信内的浏览器,它里面也只是一个HTML页面,HTML页面是没办法调用用户机器上的浏览器的.

        如果通过页面就能调用用户手机上的软件.那系统早就不安全了.

        如何用java开发微信

        说明:

        本次的教程主要是对微信公众平台开发者模式的讲解,网络上很多类似文章,但很多都让初学微信开发的人一头雾水,所以总结自己的微信开发经验,将微信开发的整个过程系统的列出,并对主要代码进行讲解分析,让初学者尽快上手。

        在阅读本文之前,应对微信公众平台的官方开发文档有所了解,知道接收和发送的都是xml格式的数据。另外,在做内容回复时用到了图灵机器人的api接口,这是一个自然语言解析的开放平台,可以帮我们解决整个微信开发过程中最困难的问题,此处不多讲,下面会有其详细的调用方式。

        1.1 在登录微信官方平台之后,开启开发者模式,此时需要我们填写url和token,所谓url就是我们自己服务器的接口,用WechatServlet.java来实现,相关解释已经在注释中说明,代码如下:

        [java] view plain copy

        package demo.servlet;

        import java.io.BufferedReader;

        import java.io.IOException;

        import java.io.InputStream;

        import java.io.InputStreamReader;

        import java.io.OutputStream;

        import javax.servlet.ServletException;

        import javax.servlet.http.HttpServlet;

        import javax.servlet.http.HttpServletRequest;

        import javax.servlet.http.HttpServletResponse;

        import demo.process.WechatProcess;

        /**

        * 微信服务端收发消息接口

        *

        [email protected]

        *

        */

        public class WechatServlet extends HttpServlet {

        /**

        * The doGet method of the servlet. br

        *

        * This method is called when a form has its tag value method equals to get.

        *

        [email protected]

        [email protected]�the server

        [email protected]

        [email protected] the client

        [email protected]

        *             if an error occurred

        [email protected]

        *             if an error occurred

        */

        public void doGet(HttpServletRequest request, HttpServletResponse response)

        throws ServletException, IOException {

        request.setCharacterEncoding("UTF-8");

        response.setCharacterEncoding("UTF-8");

        /** 读取接收到的xml消息 */

        StringBuffer sb = new StringBuffer();

        InputStream is = request.getInputStream();

        InputStreamReader isr = new InputStreamReader(is, "UTF-8");

        BufferedReader br = new BufferedReader(isr);

        String s = "";

        while ((s = br.readLine()) != null) {

        sb.append(s);

        }

        String xml = sb.toString(); //次即为接收到微信端发送过来的xml数据

        String result = "";

        /** 判断是否是微信接入激活验证,只有首次接入验证时才会收到echostr参数,此时需要把它直接返回 */

        String echostr = request.getParameter("echostr");

        if (echostr != null  echostr.length()  1) {

        result = echostr;

        } else {

        //正常的微信处理流程

        result = new WechatProcess().processWechatMag(xml);

        }

        try {

        OutputStream os = response.getOutputStream();

        os.write(result.getBytes("UTF-8"));

        os.flush();

        os.close();

        } catch (Exception e) {

        e.printStackTrace();

        }

        }

        /**

        * The doPost method of the servlet. br

        *

        * This method is called when a form has its tag value method equals to

        * post.

        *

        [email protected]

        [email protected]�the server

        [email protected]

        [email protected] the client

        [email protected]

        *             if an error occurred

        [email protected]

        *             if an error occurred

        */

        public void doPost(HttpServletRequest request, HttpServletResponse response)

        throws ServletException, IOException {

        doGet(request, response);

        }

        }

        1.2 相应的web.xml配置信息如下,在生成WechatServlet.java的同时,可自动生成web.xml中的配置。前面所提到的url处可以填写例如:http;//服务器地址/项目名/wechat.do

        [html] view plain copy

        ?xml version="1.0" encoding="UTF-8"?

        web-app version="2.5"

        xmlns=""

        xmlns:xsi=""

        xsi:schemaLocation="

        "

        servlet

        descriptionThis is the description of my J2EE component/description

        display-nameThis is the display name of my J2EE component/display-name

        servlet-nameWechatServlet/servlet-name

        servlet-classdemo.servlet.WechatServlet/servlet-class

        /servlet

        servlet-mapping

        servlet-nameWechatServlet/servlet-name

        url-pattern/wechat.do/url-pattern

        /servlet-mapping

        welcome-file-list

        welcome-fileindex.jsp/welcome-file

        /welcome-file-list

        /web-app

        1.3 通过以上代码,我们已经实现了微信公众平台开发的框架,即开通开发者模式并成功接入、接收消息和发送消息这三个步骤。

        下面就讲解其核心部分——解析接收到的xml数据,并以文本类消息为例,通过图灵机器人api接口实现智能回复。

        2.1 首先看一下整体流程处理代码,包括:xml数据处理、调用图灵api、封装返回的xml数据。

        [java] view plain copy

        package demo.process;

        import java.util.Date;

        import demo.entity.ReceiveXmlEntity;

        /**

        * 微信xml消息处理流程逻辑类

        [email protected]

        *

        */

        public class WechatProcess {

        /**

        * 解析处理xml、获取智能回复结果(通过图灵机器人api接口)

        [email protected]

        [email protected](xml格式数据)

        */

        public String processWechatMag(String xml){

        /** 解析xml数据 */

        ReceiveXmlEntity xmlEntity = new ReceiveXmlProcess().getMsgEntity(xml);

        /** 以文本消息为例,调用图灵机器人api接口,获取回复内容 */

        String result = "";

        if("text".endsWith(xmlEntity.getMsgType())){

        result = new TulingApiProcess().getTulingResult(xmlEntity.getContent());

        }

        /** 此时,如果用户输入的是“你好”,在经过上面的过程之后,result为“你也好”类似的内容

        *  因为最终回复给微信的也是xml格式的数据,所有需要将其封装为文本类型返回消息

        * */

        result = new FormatXmlProcess().formatXmlAnswer(xmlEntity.getFromUserName(), xmlEntity.getToUserName(), result);

        return result;

        }

        }

        2.2 解析接收到的xml数据,此处有两个类,ReceiveXmlEntity.java和ReceiveXmlProcess.java,通过反射的机制动态调用实体类中的set方法,可以避免很多重复的判断,提高代码效率,代码如下:

        [java] view plain copy

        package demo.entity;

        /**

        * 接收到的微信xml实体类

        [email protected]

        *

        */

        public class ReceiveXmlEntity {

        private String ToUserName="";

        private String FromUserName="";

        private String CreateTime="";

        private String MsgType="";

        private String MsgId="";

        private String Event="";

        private String EventKey="";

        private String Ticket="";

        private String Latitude="";

        private String Longitude="";

        private String Precision="";

        private String PicUrl="";

        private String MediaId="";

        private String Title="";

        private String Description="";

        private String Url="";

        private String Location_X="";

        private String Location_Y="";

        private String Scale="";

        private String Label="";

        private String Content="";

        private String Format="";

        private String Recognition="";

        public String getRecognition() {

        return Recognition;

        }

        public void setRecognition(String recognition) {

        Recognition = recognition;

        }

        public String getFormat() {

        return Format;

        }

        public void setFormat(String format) {

        Format = format;

        }

        public String getContent() {

        return Content;

        }

        public void setContent(String content) {

        Content = content;

        }

        public String getLocation_X() {

        return Location_X;

        }

        public void setLocation_X(String locationX) {

        Location_X = locationX;

        }

        public String getLocation_Y() {

        return Location_Y;

        }

        public void setLocation_Y(String locationY) {

        Location_Y = locationY;

        }

        public String getScale() {

        return Scale;

        }

        public void setScale(String scale) {

        Scale = scale;

        }

        public String getLabel() {

        return Label;

        }

        public void setLabel(String label) {

        Label = label;

        }

        public String getTitle() {

        return Title;

        }

        public void setTitle(String title) {

        Title = title;

        }

        public String getDescription() {

        return Description;

        }

        public void setDescription(String description) {

        Description = description;

        }

        public String getUrl() {

        return Url;

        }

        public void setUrl(String url) {

        Url = url;

        }

        public String getPicUrl() {

        return PicUrl;

        }

        public void setPicUrl(String picUrl) {

        PicUrl = picUrl;

        }

        public String getMediaId() {

        return MediaId;

        }

        public void setMediaId(String mediaId) {

        MediaId = mediaId;

        }

        public String getEventKey() {

        return EventKey;

        }

        public void setEventKey(String eventKey) {

        EventKey = eventKey;

        }

        public String getTicket() {

        return Ticket;

        }

        public void setTicket(String ticket) {

        Ticket = ticket;

        }

        public String getLatitude() {

        return Latitude;

        }

        public void setLatitude(String latitude) {

        Latitude = latitude;

        }

        public String getLongitude() {

        return Longitude;

        }

        public void setLongitude(String longitude) {

        Longitude = longitude;

        }

        public String getPrecision() {

        return Precision;

        }

        public void setPrecision(String precision) {

        Precision = precision;

        }

        public String getEvent() {

        return Event;

        }

        public void setEvent(String event) {

        Event = event;

        }

        public String getMsgId() {

        return MsgId;

        }

        public void setMsgId(String msgId) {

        MsgId = msgId;

        }

        public String getToUserName() {

        return ToUserName;

        }

        public void setToUserName(String toUserName) {

        我用java程序给微信投票刷选票我违法了么?会被抓么?

        你这个刷票行为并不违法 出现404错误 应该是短时间多次访问形成ddos攻击 如果你是被防火墙封了ip还好 若是真的形成ddos攻击导致所有外网无法访问 原地址的主人 追究必判

        • <bdo id='74qbnihl'></bdo><ul id='ty7d2n0n'></ul>
          <tfoot id='anbd1u0g'></tfoot>

          <small id='5wr4cf75'></small><noframes id='203apw2m'>

        • <i id='94ro89h0'><tr id='evx0ipz8'><dt id='gbsv7k2h'><q id='e9gyjp8g'><span id='z5nfb8vf'><b id='pbzydfy1'><form id='xac9u8fg'><ins id='dbthypnh'></ins><ul id='ymwegalk'></ul><sub id='xb3s5em2'></sub></form><legend id='mgwblbtp'></legend><bdo id='8qhclveb'><pre id='s6sh7npw'><center id='cjvzazna'></center></pre></bdo></b><th id='wmxfmiyr'></th></span></q></dt></tr></i><div id='y48ir6ua'><tfoot id='pqbr0bpd'></tfoot><dl id='dgj85n7c'><fieldset id='rh9h9alv'></fieldset></dl></div>
              • <legend id='s32nq3q4'><style id='luf4pkoa'><dir id='2qk80ja9'><q id='4bd68y00'></q></dir></style></legend>

                  <tbody id='vuzgin8u'></tbody>

                  上一篇:java反序数代码 java list 反序

                  栏    目:JavaScript

                  下一篇:java菜单栏代码 java菜单怎么写

                  本文标题:微信挑一挑java代码 微信挑一挑java代码怎么做

                  本文地址:https://www.xiuzhanwang.com/a1/JavaScript/17042.html

                  网页制作CMS教程网络编程软件编程脚本语言数据库服务器

                  如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

                  联系QQ:835971066 | 邮箱:835971066#qq.com(#换成@)

                  Copyright © 2002-2020 脚本教程网 版权所有

                    <bdo id='yvvfj96o'></bdo><ul id='agirf22g'></ul>

                      <small id='bhgssp0p'></small><noframes id='3dd1xuh1'>

                    1. <legend id='vbjpn35b'><style id='r7prtl0h'><dir id='dwu5ey8a'><q id='zokcqu4r'></q></dir></style></legend><tfoot id='m2zrbvd1'></tfoot>
                      <i id='ium7tty0'><tr id='9yn8q270'><dt id='kjku1sb7'><q id='vt3am8j2'><span id='w3yk8rsh'><b id='9ip8uzes'><form id='31rh07tt'><ins id='9wv1s6hg'></ins><ul id='h1d22icd'></ul><sub id='hhnmc92j'></sub></form><legend id='alis0dc8'></legend><bdo id='0oszitl5'><pre id='7cihqibk'><center id='f6g8wgc1'></center></pre></bdo></b><th id='6bqa5bos'></th></span></q></dt></tr></i><div id='9mcdwac9'><tfoot id='f70wc1dc'></tfoot><dl id='vjpzazap'><fieldset id='jtz8r21d'></fieldset></dl></div>