热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

微信公众平台(测试接口)准备工作

想要微信开发,首先要有个服务器,但是自己没有。这时候可以用花生壳,将内网映射到公网上,这样就可以在公网访问自己的网站了。

1.申请微信公众号

我们要进行微信公众平台的开发,第一步当然是要有公众号了。什么?不知道什么是微信公众号,看来你还要先回炉炼炼了,呵呵。通俗的说,我们微信平台就好像是一个大社会,里面有个体人,也有各种组织机构。你自己使用的普通微信号就是个体人,而公众号就是那些组织,这些组织又分为2类:一类是提供各种信息的,称为订阅号;另一种是提供各种服务的,称为服务号。当然,目前个人只能申请到订阅号,只有组织机构,比如公司等才能申请到服务号。

订阅号和服务号的区别在哪里呢?简单的说,服务号旨在为用户提供服务。你可以用你自己的微信加一下招商银行的微信号看看就知道什么是服务号了。订阅号旨在为用户提供信息和资讯。典型的例子有“XXX”微信号。

具体来说,服务号:

1个月(30天)内仅可以发送1条群发消息。 2、发给订阅用户(粉丝)的消息,会显示在对方的聊天列表中。 3、在发送消息给用户时,用户将收到即时的消息提醒。 4、服务号会在订阅用户(粉丝)的通讯录中。 5、可申请自定义菜单。 而订阅号: 1、每天(24小时内)可以发送1条群发消息。 2、发给订阅用户(粉丝)的消息,将会显示在对方的订阅号文件夹中。 3、在发送消息给订阅用户(粉丝)时,订阅用户不会收到即时消息提醒。 4、在订阅用户(粉丝)的通讯录中,订阅号将被放入订阅号文件夹中。 5、订阅号不支持申请自定义菜单。

通过这个比较大家大致有个直观的印象了吧,简单的说,订阅号主要是为粉丝提供各种资讯和新闻的,功能比较简单;而服务号呢,主要是为粉丝提供各种服务的,可以有自定义菜单。而且更重要的一点就是,服务号可以申请到更多的更高级的平台接口。到这里,大家就应该明白了,我们做微信商城,需要申请的是微信服务号。

对个人开发者,是申请不到服务号的,不过,腾讯还是考虑到了这一点,特意为我们准备了测试帐号,通过这个帐号,我们可以获得微信服务号的所有功能和接口调用权限。

好了,废话不多说了,接下来就跟着我一步一步的去申请微信测试帐号吧

打开申请地址:http://mp.weixin.qq.com/debug/cgi-bin/sandbox?t=sandbox/login

看到上方的说明了吗?无需公众帐号,快速申请接口测试号,直接体验和测试公众平台所有高级接口。很激动吧。只要你输入手机号和验证码,马上就可以申请成功了,申请成功后如下图:

大家注意观察,这个测试号的有效期是1年,而且分配了微信号和二维码。现在就拿起你的手机微信扫描一下刚刚分配给你的二维码图案吧,你会发现马上就可以关注申请到的这个测试公众号了。

点击关注后,我们可以在订阅号里面找到这个公众号,大家请注意,虽然放在了订阅号里面,但是该测试号基本上可以调用微信平台所有的高级接口(见“可使用接口类别列表”),所以我们的这个测试号对我们是够用的。

2.微信公众平台开发基本原理

不知大家注意到没有,我们在第一节中的截图中,有个“网站接口配置”的配置项需要填写,其实这个就是微信平台和我们的网站对接的接口的url地址了。

我们来看这张图。其中左侧蓝色框内部就是微信平台,右侧红色框内部就是我们自己的网站所在的服务器咯。微信平台和网站服务器之间通过接口调用来通信。当微信用户向我们的公众号发生消息时(具体的消息类型以后介绍),微信后台服务器会判断该消息是否是发给我们申请的公众号,如果是,将该消息转发给我们的公众号并向我们配置的网站接口地址发送一个请求消息,我们的网站接受到消息后,进行处理,并将处理的结果(响应消息)发送给微信平台,经过平台的转发,最后显示到微信用户的聊天框。

这是一次典型的消息交互的过程,有了这个印象之后,我们就明白了,我们要做的工作的重点在于网站服务器端,也就是说:如何接受微信平台发送过来的请求消息,如何进行处理,最后如何返回处理结果给微信平台(图中绿色部分)。

3.服务器环境准备

我们要想接受并处理微信平台发送过来的消息,当然得有自己的网站服务器了。

所以,接下来我们就要准备我们的网站服务器环境了。

很多同学喜欢用百度应用引擎BAE,因为是免费申请而且不需要维护,这一点的确是很方便的,但我这里要说的是,我们在开发程序的时候,还是不建议那样做,为什么呢?因为不利于调试。 正常的步骤应该是在我们本地开发调试,没有任何问题之后再放到真正的服务器上去(例如百度BAE等)。还有一个话题,我们开发我们的网站究竟使用什么语言呢?其实只要可以用来开发网站的语言都可以的,例如:Java、PHP、ASP.NET、Ruby、Python、Note.js等。微信平台和我们的网站交互是通过接口调用来实现的,只要我们的网站能对请求消息进行响应就可以了,使用什么语言都无所谓的。当然,看你最擅长哪门语言就使用哪门语言了,因为现在网站开发这一块php用得越来越多,所以我们就选择php作为我们网站的开发语言。

语言选好了,下一步就是搭建本地的开发环境了。其实本地开发环境的搭建和普通php网站的开发环境的搭建是一样的,如果你不熟悉,可以自己直接到网上去下载一个WAMP套件,安装一下,然后再下载一个eclipse作为开发的工具就可以了。

那么重点是什么呢?重点就是微信平台和我们本地服务器之间的通信问题。

我们看下面的图:

微信平台调用我们网站是通过这里配置的网站URL和Token来调用的,所以,我们首先需要为我们本地的服务器申请一个url,让外网能通过这个url访问到我们的本地网站。换句话说,就是要能将我们本地电脑上的网站发布到公网上去,让所有人都能访问。

3.1 本地网站到公网域名的映射

想要将自己本地电脑上运行的网站发布到公网,让所有的人都可以访问看起来是很麻烦的一件事情。因为你首先要有一个域名,然后还要在本地的路由器上配置端口映射,而且还要特别注意防火墙的设置。但是,现在我给大家推荐一个非常好的工具:新花生壳动态域名工具。通过这个工具,你不需要设置路由器的端口映射,也不必管防火墙的设置,甚至连域名都不需要申请,因为这一切,新花生壳都已经帮你解决了。好了,闲话还是少说,以免有广告之嫌。那我们正式开始教大家如何将你自己电脑上运行的网站发布到互联网上去让所有人都可以访问。

1.首先,你在本地要有一个可以运行的网站,如果没有自己新建一个web项目,然后运行起来。例如:我在eclipse新建了一个java的web项目,只有一个jsp页面,并且在tomcat里面启动运行起来。

2.自己在浏览器输入:localhost:8089/Demo访问一下,看是否能打开首页。(你的url地址可能与我的不同)

3.能打开的话,接着从这里:https://console.oray.com/passport/register.html注册一个花生壳的帐号。在这里:http://hsk.oray.com/download/下载“新花生壳客户端”,安装后使用注册号的帐号登录。

4.登录后,马上就可以看到花生壳帮我们分配的免费2级域名了,我的是:xxx123.vicp.cc

 

5.点击红圈处的图标进行域名诊断,结果出现“成功”字样则表示域名映射成功了。

6.回到域名列表页面,右键-》新花生壳管理

 

7.在弹出页面点击添加映射。我们只需要在自定义应用选项卡里面填写我们的本地网站在内网的ip地址和端口号就可以了(注意勾选“开启外网HTTP80端口”),例如我的:

8.点击确定后,通过花生壳给我们分配的2级域名就可以在互联网上的任何地方访问我们的网站了。这样,我们就把我们本地电脑上的web网站放到了互联网上。

3.2 填写微信平台的接口配置信息

接下来,把我们的2级域名填写到接口url里面(注意带应用名称)

Token 自己随意输入一个字符串(主要用于校验,后面会详细说明),例如:wx123

点击提交。

到这里 我们的本地服务器的环境配置就完成了,下一讲我们开始微信平台公众号的开发。


推荐阅读
  • 分享css中提升优先级属性!important的用法总结
    web前端|css教程css!importantweb前端-css教程本文分享css中提升优先级属性!important的用法总结微信门店展示源码,vscode如何管理站点,ubu ... [详细]
  • 在IDEA中运行CAS服务器的配置方法
    本文介绍了在IDEA中运行CAS服务器的配置方法,包括下载CAS模板Overlay Template、解压并添加项目、配置tomcat、运行CAS服务器等步骤。通过本文的指导,读者可以轻松在IDEA中进行CAS服务器的运行和配置。 ... [详细]
  • 如何实现织梦DedeCms全站伪静态
    本文介绍了如何通过修改织梦DedeCms源代码来实现全站伪静态,以提高管理和SEO效果。全站伪静态可以避免重复URL的问题,同时通过使用mod_rewrite伪静态模块和.htaccess正则表达式,可以更好地适应搜索引擎的需求。文章还提到了一些相关的技术和工具,如Ubuntu、qt编程、tomcat端口、爬虫、php request根目录等。 ... [详细]
  • 本文介绍了互联网思维中的三个段子,涵盖了餐饮行业、淘品牌和创业企业的案例。通过这些案例,探讨了互联网思维的九大分类和十九条法则。其中包括雕爷牛腩餐厅的成功经验,三只松鼠淘品牌的包装策略以及一家创业企业的销售额增长情况。这些案例展示了互联网思维在不同领域的应用和成功之道。 ... [详细]
  • Tomcat安装与配置教程及常见问题解决方法
    本文介绍了Tomcat的安装与配置教程,包括jdk版本的选择、域名解析、war文件的部署和访问、常见问题的解决方法等。其中涉及到的问题包括403问题、数据库连接问题、1130错误、2003错误、Java Runtime版本不兼容问题以及502错误等。最后还提到了项目的前后端连接代码的配置。通过本文的指导,读者可以顺利完成Tomcat的安装与配置,并解决常见的问题。 ... [详细]
  • Linux下部署Symfoy2对app/cache和app/logs目录的权限设置,symfoy2logs
    php教程|php手册xml文件php教程-php手册Linux下部署Symfoy2对appcache和applogs目录的权限设置,symfoy2logs黑色记事本源码,vsco ... [详细]
  • 本文介绍了在开发Android新闻App时,搭建本地服务器的步骤。通过使用XAMPP软件,可以一键式搭建起开发环境,包括Apache、MySQL、PHP、PERL。在本地服务器上新建数据库和表,并设置相应的属性。最后,给出了创建new表的SQL语句。这个教程适合初学者参考。 ... [详细]
  • 知识图谱——机器大脑中的知识库
    本文介绍了知识图谱在机器大脑中的应用,以及搜索引擎在知识图谱方面的发展。以谷歌知识图谱为例,说明了知识图谱的智能化特点。通过搜索引擎用户可以获取更加智能化的答案,如搜索关键词"Marie Curie",会得到居里夫人的详细信息以及与之相关的历史人物。知识图谱的出现引起了搜索引擎行业的变革,不仅美国的微软必应,中国的百度、搜狗等搜索引擎公司也纷纷推出了自己的知识图谱。 ... [详细]
  • MySQL语句大全:创建、授权、查询、修改等【MySQL】的使用方法详解
    本文详细介绍了MySQL语句的使用方法,包括创建用户、授权、查询、修改等操作。通过连接MySQL数据库,可以使用命令创建用户,并指定该用户在哪个主机上可以登录。同时,还可以设置用户的登录密码。通过本文,您可以全面了解MySQL语句的使用方法。 ... [详细]
  • Netty源代码分析服务器端启动ServerBootstrap初始化
    本文主要分析了Netty源代码中服务器端启动的过程,包括ServerBootstrap的初始化和相关参数的设置。通过分析NioEventLoopGroup、NioServerSocketChannel、ChannelOption.SO_BACKLOG等关键组件和选项的作用,深入理解Netty服务器端的启动过程。同时,还介绍了LoggingHandler的作用和使用方法,帮助读者更好地理解Netty源代码。 ... [详细]
  • Servlet多用户登录时HttpSession会话信息覆盖问题的解决方案
    本文讨论了在Servlet多用户登录时可能出现的HttpSession会话信息覆盖问题,并提供了解决方案。通过分析JSESSIONID的作用机制和编码方式,我们可以得出每个HttpSession对象都是通过客户端发送的唯一JSESSIONID来识别的,因此无需担心会话信息被覆盖的问题。需要注意的是,本文讨论的是多个客户端级别上的多用户登录,而非同一个浏览器级别上的多用户登录。 ... [详细]
  • 本文介绍了iOS开发中检测和解决内存泄漏的方法,包括静态分析、使用instruments检查内存泄漏以及代码测试等。同时还介绍了最能挣钱的行业,包括互联网行业、娱乐行业、教育行业、智能行业和老年服务行业,并提供了选行业的技巧。 ... [详细]
  • 【影评】大内密探灵灵狗
    本文是对王晶执导的电影《大内密探灵灵狗》进行的影评。文章称赞了王晶的才华和导演经验,认为演员阵容强大,笑料不少,发明新奇又好笑。然而,编剧的表现被认为是本片的最大失败,宣传言过其实,笑点不多。总体来说,本片是一部典型的王式喜剧,可看性较高,但没有突破。 ... [详细]
  • 如何使用PLEX播放组播、抓取信号源以及设置路由器
    本文介绍了如何使用PLEX播放组播、抓取信号源以及设置路由器。通过使用xTeve软件和M3U源,用户可以在PLEX上实现直播功能,并且可以自动匹配EPG信息和定时录制节目。同时,本文还提供了从华为itv盒子提取组播地址的方法以及如何在ASUS固件路由器上设置IPTV。在使用PLEX之前,建议先使用VLC测试是否可以正常播放UDPXY转发的iptv流。最后,本文还介绍了docker版xTeve的设置方法。 ... [详细]
  • mui框架offcanvas侧滑超出部分隐藏无法滚动如何解决
    web前端|js教程off-canvas,部分,超出web前端-js教程mui框架中off-canvas侧滑的一个缺点就是无法出现滚动条,因为它主要用途是设置类似于qq界面的那种格 ... [详细]
author-avatar
渡船毛_699
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有