精华内容
下载资源
问答
  • 微信公众号主要面向名人、政府、媒体、企业等机构推出的合作推广业务。在这里可以通过微信渠道将品牌推广给上亿的微信用户,减少宣传成本,提高品牌知名度,打造更具影响力的品牌形象。 3. 公众平台 微信公众平...

    说明:该篇博客是博主一字一码编写的,实属不易,请尊重原创,谢谢大家!

    一丶概述

    公众号与公众平台

    1. 微信账号类型

    • 个人号
    • 公众号
      • 订阅号
      • 服务号
    • 企业号

    2. 公众号

    微信公众号主要面向名人、政府、媒体、企业等机构推出的合作推广业务。在这里可以通过微信渠道将品牌推广给上亿的微信用户,减少宣传成本,提高品牌知名度,打造更具影响力的品牌形象。

    3. 公众平台

    微信公众平台是运营者通过公众号为微信用户提供资讯和服务的平台,而公众平台开发接口则是提供服务的基础,开发者在公众平台网站中创建公众号、获取接口权限后,可以通过阅读公众平台开发接口文档来帮助开发。

    微信公众平台可以用来注册、管理公众号企业号

    登录网址:https://mp.weixin.qq.com/

    进入上面网址,可进行登录及注册

    注册流程:

    • step1 基本信息

    • step2 选择类型

    • step3 信息登记

    • step4 公众号信息

    • step5 完成注册后,进行登录,首先需使用手机进行扫码

    • 在手机端显示此界面,确认无误后,确定即可

    • 通过身份验证后,即可在网页端对创建的公众号进行简单配置,如下图

    • 一些简单的功能添加以及配置(需要啥配置啥即可,简单操作这里不做详细说明了)

    4. 公众号与个人号的区别

    微信公众号和个人号是完全不同的。

    微信对个人号的定位是普通用户之间的交流和通讯,微信并不鼓励和支持使用个人号进行营销推广(微信曾经大规模封杀好友过多的营销个人号)。

    而公众号则完全是为品牌推广、信息推送等服务而定制的。使用公众号,可以向关注者(即粉丝)群发图文消息,粉丝在对话界面看到消息后,可以点击跳转到一个图文页面。公众号还提供关键词自动回复等基础功能,以此可以随时、自动的和粉丝进行互动。

    除了这些基础功能之外,更大的区别是,微信针对公众号开放了很多程序接口。在这些接口的基础上,可以向粉丝提供更多的服务。此外,认证的服务号还可以申请微信支付。粉丝可以使用微信支付向进行付款(订购服务或购买商品)。所有这些,都是个人号不具备的。

    微信公众号的注册几乎是没有门槛的。不过针对不同类型的公众号,微信提供的功能不同,资质要求也不一样。

    二丶微信开发原理

    公众号主要通过

    • 公众号消息会话
    • 公众号内网页

    来为用户提供服务的。

    • 公众号消息会话

    公众号是以微信用户的一个联系人形式存在的,消息会话是公众号与用户交互的基础。

    • 公众号内网页

    许多复杂的业务场景,需要通过网页形式来提供服务。

    • 使用微信服务器提供的功能无法满足我们的需求

    设想两个场景:

    1. 公众号的消息自动回复想做的智能一些,类似于iphone的Siri,例如粉丝发送“今天的北京天气”到公众号,回复粉丝信息时要按照特定时间特定城市给予反馈;

    2. 公众号内嵌的网页需要获取浏览用户的微信头像、昵称、当前定位等信息

    • 模型分类

    无扩展应用模型

    1. 公众号消息会话

     

    2. 公众号内网页

    有扩展应用模型

    1. 公众号消息会话

    2. 公众号内网页

    • 公众号接口

    1. 公众号消息会话

    目前公众号内主要有这样几类消息服务的类型,分别用于不同的场景。

    群发消息

    公众号可以以一定频次(订阅号为每天1次,服务号为每月4次),向用户群发消息,包括文字消息、图文消息、图片、视频、语音等。

    被动回复消息

    在用户给公众号发消息后,微信服务器会将消息发到开发者预先在开发者中心设置的服务器地址(开发者需要进行消息真实性验证),公众号可以在5秒内做出回复,可以回复一个消息,也可以回复命令告诉微信服务器这条消息暂不回复。被动回复消息可以设置加密(在公众平台官网的开发者中心处设置,设置后,按照消息加解密文档来进行处理。其他3种消息的调用因为是API调用而不是对请求的返回,所以不需要加解密)。

    客服消息

    在用户给公众号发消息后的48小时内,公众号可以给用户发送不限数量的消息,主要用于客服场景。用户的行为会触发事件推送,某些事件推送是支持公众号据此发送客服消息的,详见微信推送消息与事件说明文档。

    模板消息

    在需要对用户发送服务通知(如刷卡提醒、服务预约成功通知等)时,公众号可以用特定内容模板,主动向用户发送消息。

    2. 公众号内网页

    对于公众号内网页,提供以下场景接口:

    网页授权获取用户基本信息

    通过该接口,可以获取用户的基本信息

    微信JS-SDK

    是开发者在网页上通过JavaScript代码使用微信原生功能的工具包,开发者可以使用它在网页上录制和播放微信语音、监听微信分享、上传手机本地图片、拍照等许多能力。

    3.微信开发者文档

    文档链接地址:https://mp.weixin.qq.com/wiki/home/index.html

     

     

     

     

     

    展开全文
  • 说明:该篇博客是博主一字一码编写的,实属不易,请尊重原创,谢谢大家! ... 一丶叙述 开发说明 Python代码实现(以Flask框架为例) ... 客户端---->微信服务器---->nginx服务器---->开发者服务器 ...

    说明:该篇博客是博主一字一码编写的,实属不易,请尊重原创,谢谢大家!

    接着上一篇博客继续往下写 :https://blog.csdn.net/qq_41782425/article/details/85319116

    一丶叙述

    • 开发说明

    1. Python代码实现(以Flask框架为例)
    2. 将使用公众号消息会话
    3. 客户端---->微信服务器---->nginx服务器---->开发者服务器
    4. 在微信服务器与开发者服务器之间搭建了nginx服务器默认为80端口(也是微信支持的端口),跟开发者服务器属于同一个主机
    5. 在nginx服务器上配置了多个端口,方便多人进行测试,转发规则:location/wechat8007
    6. 在微信公众号测试平台接口配置url为host/wechat8007时,当微信服务器发送消息给host/wechat8007时,host为nginx服务器时,就会按照/wechat8007转发规则匹配,一旦匹配成功后,由nginx服务器转发给开发者服务器上127.0.0.1:8007进程的用户,这样可以实现多个账号共享一个80端口,并可以收到微信服务器对应用户的消息
    7. 注:在写的flask程序中视图网址也必须是/wechat8007,因为nginx在向后台转发的时候,它只是按照/wechat8007规则知道转发给谁,它会把微信用户的请求原封不动的往后去发,因为微信服务器在向我们发送请求路径就是/wechat:8007,意味着nginx再转发给我们的时候,在我们写的flask程序收到的请求里面,你会发现对应的请求路径也是/wechat8007,所以我们flask程序中的route路径也必须是/wechat8007
    8. 如果是在公司做开发的话,不涉及到多个账户使用一个80端口,所以直接把程序在开发者服务器上以80端口运行,然后在微信公众测试平台配置url为配置程序地址即可
    9. 博主之所以这样做,那是因为我还没有购买服务器(●︿●)
    • 接入微信公众平台

    接入微信公众平台开发,开发者需要按照如下步骤完成:

    1. 填写服务器配置
    2. 验证服务器地址的有效性
    3. 依据接口文档实现业务逻辑
    • 填写服务器配置

    登录微信公众平台官网后,在公众平台后台管理页面 - 开发者中心页,点击“修改配置”按钮,填写服务器地址(URL)、Token和EncodingAESKey,其中URL是开发者用来接收微信消息和事件的接口URL。Token可由开发者可以任意填写,用作生成签名(该Token会和接口URL中包含的Token进行比对,从而验证安全性)。EncodingAESKey由开发者手动填写或随机生成,将用作消息体加解密密钥。

    同时,开发者可选择消息加解密方式:明文模式、兼容模式和安全模式。模式的选择与服务器配置在提交后都会立即生效,请开发者谨慎填写及选择。加解密方式的默认状态为明文模式,选择兼容模式和安全模式需要提前配置好相关加解密代码,详情请参考消息体签名及加解密部分的文档。

    1.进入微信公众平台后,找到开发栏,进入基本配置

    2.利用测试平台

    测试平台登录地址:https://mp.weixin.qq.com/debug/cgi-bin/sandbox?t=sandbox/login

    在手机微信上进行扫码登录即可

    二丶验证服务器地址的有效性

    开发者提交信息后,微信服务器将发送GET请求到填写的服务器地址URL上,GET请求携带四个参数:

    开发者通过检验signature对请求进行校验。若确认此次GET请求来自微信服务器,请原样返回echostr参数内容,则接入生效,成为开发者成功,否则接入失败。

     

    校验流程:

    1. 将token、timestamp、nonce三个参数进行字典序排序
    2. 将三个参数字符串拼接成一个字符串进行sha1加密
    3. 开发者获得加密后的字符串可与signature对比,标识该请求来源于微信

    1.根据上面微信公众平台提供的开发文档进行代码编写

    代码实现如下

    # coding:utf-8
    from flask import Flask, request, abort
    import hashlib
    
    # 常量
    # 微信的token令牌
    WECHAT_TOKEN = "cdtaogang"
    
    app = Flask(__name__)
    
    
    @app.route("/wechat8007")
    def wechat():
        """对接微信公众号服务器"""
        # 接收微信服务器发送的参数
        signature = request.args.get("signature")
        timestamp = request.args.get("timestamp")
        nonce = request.args.get("nonce")
        echostr = request.args.get("echostr")
        # 校验参数
        if not all([signature, timestamp, nonce, echostr]):
            abort(400)
    
        # 按照微信的流程进行计算签名
        li = [WECHAT_TOKEN, timestamp, nonce]
        # 排序
        li.sort()
        # 拼接字符串
        tmp_str = ''.join(li)
        # 进行sha1加密, 得到正确的签名值
        sign = hashlib.sha1(tmp_str).hexdigest()
        # 将自己计算的签名值与请求的签名参数进行对比,如果相同,则证明请求来自微信服务器
        if sign != signature:
            # 表示请求不是微信发的
            abort(403)
        else:
            return echostr
    
    if __name__ == '__main__':
        app.run(port=8007, debug=True)

    2.测试连接开发者服务器

    • step1 使用ssh命令测试连接服务器

    • step2 使用scp命令将程序文件推送到服务器

    • step3 在开发者服务器上运行wechat程序

    • step4 回到微信公众测试平台配置接口

    注意:当没有在服务器运行wechat程序时,进行提交会显示失败

    此时,回头看服务器程序运行日志,微信给我发了一个以get方式请求过来的数据

    大功告成!说明该服务器具有有效性....

    展开全文
  • 微信公众号查询数据库,微信公众号数据库怎么查询?以下是小编整理的微信公众号怎么查询数据库的内容。有兴趣的朋友可以往下看看。希望以下的的内容能对您有帮助。1、 启用消息接口登陆微信公众平台,选择:高级功能...

    微信公众号查询数据库,微信公众号数据库怎么查询?以下是小编整理的微信公众号怎么查询数据库的内容。有兴趣的朋友可以往下看看。希望以下的的内容能对您有帮助。

    1、 启用消息接口登陆微信公众平台,

    选择:高级功能,可以看到页面上有‘编辑模式’和‘开发模式’两个选择。

    默认开启‘编辑模式’。

    进入编辑模式并关闭。

    进入开发模式,点击成为开发者进入页面:特别注意是URL是你在‘

    2准备服务器’中自己服务器的访问路径(即接收微信服务器发送信息的url地址),必须以http://开头,且为80端口。

    Token 可以自定义。填好后点击提交,这会有下面这些结果

    (1)你的服务器没有正确响应Token验证,请阅读消息接口使用指南这样回头检查一下各项配置是否正确。如果确定配置没有问题,请按下面的方法检查

    (2)请求URL超时(超过5s)你的服务器在国外,或者服务器网速不给力,一般多试几次就可以了。如果经常这样,就需要考虑更换服务器

    (3)提交成功1、 功能测试:

    (1) 使用普通账号关注公众账号。

    (2) 发送消息‘1’给公众账号。

    (3) 如果公众账号返回‘1你好’。则测试成功。

    以上是小编整理的微信公众号怎么查询数据库的内容,希望对您有帮助,如果您想了解更多微信素材,请多多关注微素达网。

    相关推荐:

    展开全文
  • 现在很多开发,都依托在微信,有微信公众号,或者是小程序,而近段时间一直在跟进微信的会员开发功能,但是一直对于服务配置这方面都是过一遍就忘,记录一下一般,都会有公司的公众号,在没有公司的公众号的时候,...

    现在很多开发,都依托在微信,有微信公众号,或者是小程序,而近段时间一直在跟进微信的会员开发功能,但是一直对于服务配置这方面都是过一遍就忘,记录一下

    一般,都会有公司的公众号,在没有公司的公众号的时候,个人只能申请订阅号,而个人订阅号,用不了微信的接口,那么,可以选择申请一个微信公众号平台的测试号(不过支付,会员等接口,测试号也一样不能用)

    一、申请测试号

    1)进入微信公众号平台 :

    https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421137522

    af907837906a5a7be08bff1265424e05.png

    2)点击登录,扫码就行

    559a66215a717bba2a272e035120c773.png

    虽然界面和企业订阅号的有区别,但是服务器的配置token认证方式跟企业的订阅号是一样的

    看一下界面的差别:

    ffca7dc202aa20a8addf0f59088900c9.png

    二、配置并做token验证

    上面这些相对都是非常简单的,而对于第一次做跟微信开发或是第一次了解微信的配置的人来讲,疑惑的点在于URL和Token应该要填什么进去

    url :域名/action名   (一定要用域名,可以用花生壳将自己的本地的ip映射出去)

    token:自己定义,记得跟后台代码里的的token常量字符串是一样的就行

    48035d54e9f6c039a7be8e7f7852749b.png

    填好URL和Token之后,接下来的工作,就是书写我们action里面的代码了,而这一部分的代码,实际是,并不需要我们自己写,因为微信提供了demo,直接用就行,下载demo的入口:

    接入指南--> 在文中  第二步   的尾端 ,虽然写着是php示例代码下载,但是下载后,各个语言的都有

    1008f2729a2a884569e44d86dcd4e728.png

    下载下来的文件解压后:

    75f1b309bddff21637e82fec876ffc3d.png

    里面的代码,我们直接copy就可以了,需要用到的一个是加密工具类,一个是验证代码

    1、\Java\src\com\qq\weixin\mp\aes\SHA1.java   加密工具类

    2、\Java\src\com\qq\weixin\mp\aes\WXBizMsgCrypt.java    仅需要最后一个方法的两行代码

    看一下代码:

    228b1c48de29d1f8e024a4902aab81f8.png

    但是在使用的过程中,有一点点不同,我们是需要将echoStr原样返回的,在SHA1.getSHA1()的时候,如果将echoStr参数也传入时,会导致与微信传过来的密文不一致

    同时,demo代码的方法入参跟微信要求的key并不一致

    我们看一下微信要求的入参key:

    47fbcb73d300cf11ab277aeb51660555.png

    而demo里面的代码入参key并不一样,同时返回的是解密后的echoStr:

    c499c5da826e0ec951bb810afa2980e7.png

    所以我们需要稍微换一下,实际如下:

    /** * 根据微信的要求接收对应的参数 * * @param signature * @param timestamp * @param nonce * @param echostr * @return */@RequestMapping("/verifyUrl")public String verifyUrl(String signature, String timestamp, String nonce, String echostr) {    String signatureMs = null;    try {        //调用示例代码获取加密  最后一个参数是不需要传的        signatureMs = SHA1.getSHA1(TOKEN, timestamp, nonce, "");        //确认是微信发过来的请求        if (signatureMs.equals(signature)){//如果和微信发过来的加密一样            return echostr; //给微信返回相同的随机数        }    } catch (AesException e) {        e.printStackTrace();    }    return null;}

    有一个比较秀的操作就是:

    @RequestMapping("/verifyUrl")public String verifyUrl(String signature, String timestamp, String nonce, String echostr) {    return echostr; //给微信返回相同的随机数}

    这样也能校验通过,不过...  安全性,你懂的,谁都能验证。

    ps:好记性不如烂笔头,这个是非常简单的操作,但是因为不用心,一直没记住。

    展开全文
  • 最近,对微信公众号有点兴趣,就自己研究了研究里面的一些内容,发现还挺... 我想,做微信公众号开发的,对于想获取关注了公众号的用户信息,或者说是当前与后台服务器进行交互的当前用户信息,这个功能是很重要...
  • 很多人不明白微信公众号开发者中心服务器配置里面的url和token是什么,不会填写。看了教程也不理解是什么,本文详述一下这个问题。方法/步骤作为一名微信公众号开发者,别人进入你的微信公众号,肯定会看见某些网页...
  • 微信公众号开发者权限 开通接口与配置服务器作为微信公众平台的开发者,是可以修改自定义菜单的。每个公众号下端都会有三个或者是四个菜单。关于菜单的内容以及显示的方式都是可以通过后台的开发者权限更改的。如果...
  • 那么最新最全的微信公众号开发者模式配置是什么呢,下面是学习啦小编收集整理的最新最全的微信公众号开发者模式配置,希望对大家有帮助~~最新最全的微信公众号开发者模式配置工具/原料微信公众平台服务器方法/步骤...
  • 这是一个用于微信公众号配置PHP版本服务器用到的文件,亲测可用,只需替换文件中的中文提示部分,然后将文件上传到服务器端,简单到0。
  • 微信公众号管理者往往希望在有用户发来消息时候及时回应,或者密切关注新增用户数量,以及文章的留言情况,但微信公众号并不支持实时通知给管理员。一些第三方公众号后台服务也许可以做到,但是需要你开启服务器配置...
  • 微信公众号开发,微信平台连接个人服务器时用于验证的代码文件;用法:上传部署到服务器即可
  • 经常有人问HiShop小编,微信公众号商场开发必须用服务器吗?这里HiShop海商作为电商开发及服务行业提供商,就为大家解答一下这个问题。首先我们需要了解清楚什么是服务器,然后才能了解微信公众号商城开发是不是必须...
  • 认识微信公众号1.微信账号类型2.微信公众号开发需求3.微信公众号开发原理 1.微信账号类型 个人号 公众号 订阅号 服务号 企业号 这里要讲的就是订阅号 前往注册微信公众号 2.微信公众号开发需求 内嵌功能 被动...
  • 目录 ...@(认识微信公众号) 1.微信账号类型 个人号 公众号 订阅号 服务号 企业号 这里要讲的就是订阅号 前往注册微信公众号 2.微信公众号开发需求 内嵌功能 被动回复 主动告知 内嵌网页 高...
  • 微信公众号开发-服务器配置 因为公司网页需要调用公众号的api,所以特做记录 由于微信服务器获取的IP地址不固定,所以需要调用api,就需要配置服务器地址 1.微信公众平台配置 要进行服务器配置的话首先登入微信公众...
  • 一些刚接解微擎或者刚接触微信公众号开发的朋友可能会问及这样的问题。爱优科技小编就此进行解决,希望能够帮助到一些刚做微信开发的朋友们。微擎不备案可不可以用,这得分几个层面来讲。首先微擎框架作为一款比较...
  • 首先,要有自己的公众号(这句是废话),个人可以申请微信公众号的订阅号,企业才可以申请服务号,其次要有云空间或者服务器,并且将服务器IP添加至微信公众号开发配置中的IP白名单,这只是基础的准备工作 ...
  • 公众号小程序成为人们宣传产品的渠道,用户只需要在小...不过对于商家来说,微信小程序的设置还是一个陌生的区域,微信公众号小程序如何设置预约?微动天下的小编就详细的为大家总结一下。很多人都将微信语言小程序和...
  • 使用C# .net开发微信公众号服务器URL配置

    万次阅读 热门讨论 2016-09-10 23:03:35
    服务器URL配置 是微信公众号开发里非常重要的一个步骤。 虽然微信公众平台已经给了我们很多 必要的功能 像:查看用户,查看用户消息,给用户回复消息,自动给用户回复消息,根据用户消息内容回复给用户图文消息等...
  • 微信公众号服务器配置

    千次阅读 2019-06-26 09:38:14
    微信公众号开发-服务器配置 最近在进行公司的微信公众号和小程序的开发,由于都是由本人独立研发,所以框架和接口都要自己去搭去写,因此想把相关接口做完之后做一些记录,如今闲来无事就总结下相关接口,本篇内容为...
  • 微信公众号基本服务器地址(URL)配置Token认证教程(java版) 解决方法: 1.在基本服务器地址(URL)中配置外网可以访问的回调地址,如果你的系统还在测试阶段没上线,可以通过natapp工具生成一个临时域名测试,请...
  • 这篇文章主要介绍了微信公众号服务器验证Token步骤图解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 服务器验证Token验证分为以下及步骤 一,在微信公众号...
  • thinkPHP5接入微信公众号服务器验证输出echostr,验证一直失败的总结有以下几个原因: 1.服务器填写的appid和token与微信公众号配置的不对应; 2.输出需要使用echo; 3.header要设置utf-8; 4.thinkPHP app_...
  • 微信公众号服务器返回实例
  • Java 实现微信公众号模板消息推送,demo
  • 关于注册这点我就简单说一下,需要注意的就是,微信公众号一般用的就是订阅号和企业号,订阅号不能认证,权限少,且不能就行二次开发。而企业号可以认证,但是认证只有一年期限,认证费用300元。当然了,为了让我们...
  • 微信公众号开发过程及对微信公众号功能的认识
  • 1.URL 找到配置文件正确的url:  以新浪云为例,例如可以通过在线编辑右键...下条引用自微信公众号文档:https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1445241432  6、公众平台以access_tok...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 72,556
精华内容 29,022
关键字:

微信公众号不用服务器