zoukankan      html  css  js  c++  java
  • [Other]来做一个微信打印机吧 -- 微信打印的设计思路參考

    项目源代码地址:https://github.com/callmewhy/why-wechat-printer

    近期微信打印机小火了一把。比方印美团。747微信打印机,都是利用微信公共平台实现照片的打印。

    详细流程:

    1. 扫描二维码关注公共主页
    2. 发送图片
    3. 发送微信打印机上的打印码

    简单三步,实现微信打印照片的功能。

    那么它是怎么实现的呢?在此提供一下自己的思路供大家參考

    源代码已经写好了。确实可行。


    假设大家有好的思路欢迎一起分享^_^

    微信的后台接口

    用户把照片发给微信公共账号,在接收到的时候是有图片的url的,所以我们不用考虑图片的存储问题。

    • 在接收到用户发送图片消息的时候,把用户的ID和图片的地址写入到数据库的wx_images表中,
    • 在接受到用户的文字信息的时候,推断一下是不是四位数字的打印码。然后写入到刚刚那条记录里,以供打印机依据打印码获取。

    至此,微信接口的任务就算是完毕了。



    打印机的后台接口

    打印机在执行之后,首先要做的事情是获取打印码。
    设置打印码的目的。是为了防止有人随便发送照片捣乱。所以在打印机刚执行的时候,要去server获取它自己的打印码。
    为了防止打印码反复,我新建了一个wx_printers表。
    用random随机插入了100条数据,也就是100个随机的打印码,然后用一个状态标示符来标记这个打印码的状态是已用还是未用。
    打印机执行之后会先去server获取一个打印码并存到本地。然后依据这个打印码不断地訪问server,获取打印任务。
    获取到打印任务之后,直接下载图片并存到本地的暂时文件。然后调用打印的借口。



    主要的流程图:




    源代码下载地址:https://github.com/callmewhy/why-wechat-printer

  • 相关阅读:
    防雪崩利器:熔断器 Hystrix 的原理与使用
    SpringBoot返回结果为null或空值不显示处理方法
    Tomca原理分析之责任链
    TOMCAT原理详解及请求过程
    RocketMQ支持事务消息机制
    ubuntu 安装rocketmq
    Monkey安装与配置教程
    Monkey通过安装包获取包名
    git使用笔记
    Linux解压命令
  • 原文地址:https://www.cnblogs.com/jhcelue/p/6853147.html
Copyright © 2011-2022 走看看