基于Bluemix的微信公共平台应用开发

来源:本网整理

谢邀!买个车,还有好多事七七八八的费用在后面呢!至少是裸车的10%~20%买了新车都要缴的费用:车款、购置税、交强险、车船使用税、验车上牌费。1、机动车统一发票。车款就是本人历经千辛万苦和销售砍的车辆价格,这笔钱是买车中最大的一笔支出了(分期付款的单说)。2、购置税,这笔费用是买车后一定要交的,否则就无法验车上牌。这笔费用的收取有一个基本的计算方式:车价/11.7=购置税。3、交强险全称是“机动车交通事故责任强制保险”是国家为了保证第三者的利益而强制车主上的一项保险,收费标准是根据车型座位数及使用性质而定,对于老百姓的家庭自用6座以下车型只要记住每年交950元就行了。但需要提醒的是交强险只对别

而微信公共平台的账号已经达到了 200 多万,因此如果能利用 Bluemix 开发微信公共平台应用,笔者认为将为广大的微信开发者学习、部署、测试、直至形成商业应用带来福音,所以笔者通过研究,成功完成了基于 Bluemix 的微信公共平台应用开发,在此做一些简要的介绍,以便于微信公共开发者推进深化应用。

基本过程

妇专委特邀心理问答专家志愿者吴琼燕:(吴琼燕,心理学科普志愿者,在中山大学业余学习心理学,建筑技术工程师背景,看问题较为客观、深刻而透彻,思维富于逻辑和条理,乐于为心理学知识的普及贡献自己的微薄之力,希望能帮助到亲爱的朋友们!分享和给予,是我们内心幸福的源泉!)第一,有助于控制情绪。人的脑电波有以下四种β波:14HZ-30HZ:精神紧张易疲劳α波:8HZ-14HZ:精神集中而放松θ波:4HZ-7HZ:深度松弛灵感涌现δ波:0.3HZ-3HZ:睡眠准态度,能进入深度睡眠对人有益的是α、θ、δ三种,其频率范围<20Hz长期练习冥想,大脑中就会出现α波,让人感到放松而集中,让各种思绪和情绪自由

在开发微信公众平台前,需要申请一个微信公共账号,此处不做赘述,笔者使用的微信公共账号名称为:"正海说知识创新",代号为:"zhszscx"。如何申请微信公共账号,笔者不做赘述。

本质来说没区别,都是内燃机。现在常见的也都是四冲机器。区别倒是有,汽车大多汽油机。拖拉机都是柴油的,柴油机好处是结构简单,热效率高,扭矩大。但是比较笨重,噪音大,同体积重量下功率比汽油机低很多,不适合跑高速车。汽油机好处是比较轻巧,转速高,同体积功率大。拖拉机因为工作需要,终传比很大,扭矩放大倍数更高,所以跑不快,但是劲大。汽车为了跑路而生,不会有很大终传比。

在 Bluemix 中开发微信公众平台主要包括如下步骤:

  1. 申请 Bluemix 账号
  2. 下载并安装 Cloud Foundry 程序
  3. 编制一个应用的配置文件
  4. 在微信公众平台设置为开发模式
  5. 设置一个基于 Bluemix 的网址 URL
  6. 设置微信公众平台应用的令牌(Token)
  7. 下载微信公众平台的范例程序,笔者采用 PHP 语言,对该程序进行修改,设置令牌(TOKEN)
  8. 上传(push)PHP 文件,应用开始执行
  9. 在微信公众平台中,验证通过编辑模式。
  10. 利用手机微信,向微信公众平台发送信息,获得微信公众平台返回的信息。

首先,从美学角度来看,翅膀有把视线向中心集中的作用,最后会把焦点放在内衣上。在美术学里,点是视觉中心,也是力的中心。线是视觉的引导,将人们发散的视线通过引导集中到一个点上。当画面上有一个点的时候,人们的视线就集中在这个点上。单独的点本身没有上下左右的连续性和指向性,但是它有点睛的作用。能够产生积聚视线的效果。在维密的展示上,人们关注的焦点自然是闪亮的内衣,顺着名模们佩戴的翅膀的“骨骼线”,人们的视线便很自觉地被集中到模特的胸部,达到了视觉“聚拢”的效果。不信你来试一试。其次,翅膀是每个维秘天使选择的表达个性的符号,是一种追求艺术的表达方式。自古以来,翅膀就被人们赋予“天使”的象征意义,翅膀不仅

至此,基于 Bluemix 的微信公众平台应用开发顺利完成,开发者可以在此基础上进行进一步的发展。

图 1.系统框架

基于Bluemix的微信公共平台应用开发

过程描述

  1. 申请 Bluemix 账号

    进入网址:www.bluemix.net

    图 2 基于Bluemix的微信公共平台应用开发

  2. 下载并安装 Cloud Foundry 程序

    进入网址:https://github.com/Cloud Foundry/cli

    图 3 基于Bluemix的微信公共平台应用开发

    根据开发者的程序操作系统下载对应的程序。

    图 4 基于Bluemix的微信公共平台应用开发

    例如笔者下载地址是: Stable Installers 下的"Windows 64 bit"

    下载了一个文件,该文件为 installer-windows-amd64 .zip

    安装该文件后,在 C:\Program Files (x86)\Cloud Foundry 下产生了一个 cf.exe 文件。同时经过检查发现,在系统的 PATH 路径中,也增加了该目录,也就是说可以直接在 DOS COMMAND 环境下输入 CF 命令执行该文件。

  3. 编制一个应用的配置文件

    文件名为:manifest.yml 作为一个应用,需要设置应用的名称、应用产生的网址,范例的文件为:

    --- applications: - name: cf-php-mysql1 memory: 256M instances: 1 host: lzhfirstphp domain: ng.bluemix.net path: . buildpack: https://github.com/dmikusa-pivotal/cf-php-build-pack.git

    说明:

    name 指定了应用的名称

    host 指定了应用的扩展域名,如上面的范例文件则生成域名:

    lzhfirstphp. ng.bluemix.net

    其他不做变动,修改完成后,将文件保存。

    编制该文件有三个注意事项:

    1. 文件格式需要指定为 UTF-8 的格式
    2. 设置应用名称时,需要注意不能重复。
    3. 设置 HOST 名称时,尽可能长一些,或者按照个人姓名、公司名称进行设置,笔者上传部署时曾经出现过错误,估计是名称重复,后来修改后,部署成功。
  4. 在微信公众平台设置为开发模式

    进入微信公众平台,登录后,进入高级功能,设置开始开发模式。

    图 5 基于Bluemix的微信公共平台应用开发

    图 6 基于Bluemix的微信公共平台应用开发

    在微信公众平台接口中,设置对应的 URL 及令牌。

    图 7 基于Bluemix的微信公共平台应用开发

  5. 设置一个基于 Bluemix 的网址

    在 URL 中设置网址,注意此处的形式必须与前面设置的一致。

  6. 设置微信公众平台应用的令牌(token)

    设置一个令牌信息,该令牌信息是由自己指定的,一般采用特别的字符进行,以保证安全性。

  7. 下载微信公众平台的范例程序,笔者采用 PHP 语言,对该程序进行修改,设置令牌(token)等相关信息。开发者可以在微信公众平台开发者文档中下载 DEMO 文件。

    图 8 基于Bluemix的微信公共平台应用开发

    清单 1

    <?php /** * wechat php test */ //define your token define("TOKEN", "weixin"); $wechatObj = new wechatCallbackapiTest(); $wechatObj->valid(); class wechatCallbackapiTest { public function valid() { $echoStr = $_GET["echostr"]; //valid signature , option if($this->checkSignature()){ echo $echoStr; exit; } } public function responseMsg() { //get post data, May be due to the different environments $postStr = $GLOBALS["HTTP_RAW_POST_DATA"]; //extract post data if (!empty($postStr)){ $postObj = simplexml_load_string($postStr, 'SimpleXMLElement', LIBXML_NOCDATA); $fromUsername = $postObj->FromUserName; $toUsername = $postObj->ToUserName; $keyword = trim($postObj->Content); $time = time(); $textTpl = "<xml> <ToUserName><![CDATA[%s]]></ToUserName> <FromUserName><![CDATA[%s]]></FromUserName> <CreateTime>%s</CreateTime> <MsgType><![CDATA[%s]]></MsgType> <Content><![CDATA[%s]]></Content> <FuncFlag>0</FuncFlag> </xml>"; if(!empty( $keyword )) { $msgType = "text"; $contentStr = "Welcome to wechat world!"; $resultStr = sprintf($textTpl, $fromUsername, $toUsername, $time, $msgType, $contentStr); echo $resultStr; }else{ echo "Input something..."; } }else { echo ""; exit; } } private function checkSignature() { $signature = $_GET["signature"]; $timestamp = $_GET["timestamp"]; $nonce = $_GET["nonce"]; $token = TOKEN; $tmpArr = array($token, $timestamp, $nonce); sort($tmpArr, SORT_STRING); $tmpStr = implode( $tmpArr ); $tmpStr = sha1( $tmpStr ); if( $tmpStr == $signature ){ return true; }else{ return false; } } } ?>

    在这个文件中,有三处需要改动:

    第一:设置 TOKEN

    define("TOKEN", "abcdefg123");//第一处修改

    这里的数值,需要与前面网页中的 Token 的设置严格一致。

    第二:这个范例程序中只是设置了验证模式,而没有消息的响应处理,笔者将该文件进行了修改,当存在验证参数时进行验证,而不存在验证信息时,则调用响应方法。

    if ( $_GET["echostr"] ) { $wechatObj->valid(); } else { $wechatObj->responseMsg(); }

    第三:在范例程序中,对输入信息进行了一点处理,设置为返回信息。

    $contentStr = "Welcome to wechat world!".$keyword;

    也就是将微信粉丝输入的信息,加上"Welcome to wechat world!"后返回。

    另外需要注意的是该 PHP 文件的编码也必须是 UTF-8 的。上传(push)PHP 文件,如果上传正确,则等待应用执行。

    1. cf api https://api.ng.bluemix.net
    2. cf login

      此处输入申请的用户邮件、密码,执行至运行结束。

    3. cf push -f manifest.yml

    该文件名指定必须与前述的配置文件完全一致。

    在正常的配置结束后,就可以在 Bluemix 中看到该应用,该应用处于正常运行的状态。

    图 9 基于Bluemix的微信公共平台应用开发

  8. 在微信公众平台中,点击提交,系统会提示验证通过。如果提示验证不通过,需要检查 URL、Token、程序中的 Token 以及程序代码的正确性。

    另外,需要注意的是,腾讯要求服务器响应必须在 5 秒以内,因此在网络环境不够好的情况下,也许需要多提交几次才可以完成。

    特别需要注意的是,笔者曾经进行过新浪的微博开发,新浪微博开发可以采取本地服务器,一样可以验证通过,而腾讯的这种验证必须使用外部可以访问的网址,笔者曾经为此很困扰,而且腾讯的验证必须使用 80 端口,不支持 URL 带端口号,这也曾经困扰过笔者。幸而 IBM 的 Bluemix 平台可以支持。

  9. 利用手机微信,向微信公众平台发送信息,获得微信公众平台返回的信息。

    设置成功后,例如手机微信关注该微信公众平台账号,例如笔者的"正海说知识创新",账号:"zhszscx"关注的方法可以是名称查询、代号查询,也可以扫描如下的二维码,进行体验。

    想该账号发送:hello!

    将会收到系统返回的:Welcome to wechat world! hello!

    这就表示基于 Bluemix 的微信公众平台开发顺利完成。

开发中注意事项

对于前面开发中介绍到的可能出现问题的地方再做一些总结:

  1. 正确设置 HOST 名称,不可以重复。
  2. HOST 名称加上域名,需要和微信公众平台中的 URL 相匹配。
  3. 程序中的 Token 的设置必须同微信公众平台中的设置相匹配。
  4. 配置文件必须使用 UTF-8 格式。
  5. Index.php 程序文件格式必须使用 UTF-8 格式。
  6. 系统未做说明,但是默认采用的是 index.php 文件作为入口,也就是说,如果按本文所叙述的程序编制方法,利用域名访问时,将没有结果展示。
  7. 在微信公众平台提交时,可能显示失败,需要提交多次,知道显示成功。

另外需要说明的是,目前的程序只对文本型微信信息进行了回复,其他信息未做处理。而开发者如果在开发中需要变更程序,则需要再次 PUSH 就可以,但是不需要在微信编辑模式再次提交。

发展展望

笔者在前述的基础上,又增加了数据库的链接,主要是 MYSQL 服务的建立、MYSQL 服务与应用的绑定,在 PHP 程序文件中实现服务的参数调用,数据表的创建、插入、显示,成功实现了数据库的处理,另外也成功部署了基于 PHP 的网站形式的应用,有了这样的基础,说明可以利用 IBM 的 Bluemix 平台实现开发微信公共账号应用。

笔者同时也必须要说明的是,本文只是对 Bluemix 的一个入门级应用的简要总结,算是抛砖引玉,对于 Bluemix 还只是冰山一角,有待更多研究,希望与广大开发者合作共进。

扩展阅读,根据您访问的内容系统为您准备了以下内容,希望对您有帮助。

企业级区块链是什么意思?

在很多区块链企业应用的案例中,我们总能看到BaaS这个字眼,BaaS是Blockchain as a Service的缩写,中文译为“区块链即服务”。那么区块链即服务BaaS究竟是什么?我们就带着这个疑问跟随着人人链区块链技术团队的小王来仔细的探讨下。

据小王介绍:区块链即服务BaaS主要是由微软、IBM两个巨头提出的概念,说白了它其实就是一种新型的云服务,一种结合区块链技术的云服务。比如微软的Azure云计算平台、IBM的Bluemix Garage云平台都提供区块链即服务BaaS。

区块链即服务BaaS是微软、IBM这些企业从自己的云服务网络中开辟出一个空间,用来运行某个区块链节点。和普通节点及交易所节点相比,BaaS节点的用途主要是:快速建立自己所需的开发环境,提供基于区块链的搜索查询、交易提交、数据分析等一系列操作服务,这些服务既可以是中心化的,也可以是非中心化的,用来帮助开发者更快地验证自己的概念和模型。BaaS节点的服务性体现在:工具性更强,便于创建、部署、运行和监控区块链。

  • 本文相关:
  • 为什么ASP.NET开发人员要了解Azure行动服务?
  • 微软公布全新的Microsoft Azure StorSimple解決方案
  • 深入探究Windows Azure SQL Database中新等级的性能
  • 如何在Bluemix中构建应用程序和使用SessionCache服务
  • 基于Bluemixd的微信公共平台应用开发
  • 甲骨文ZFS存储设备现代云和虚拟服务器环境的理想选择
  • Windows Azure云服务和虚拟机预留IP地址将正式发布
  • 在云计算中创建跨越整个区域的虚拟网络
  • Windows Azure发布对“内部负载平衡”(ILB) 的支持
  • Windows Azure为SAP提供的增强监控解决方案
  • 免责声明 - 关于我们 - 联系我们 - 广告联系 - 友情链接 - 帮助中心 - 频道导航
    Copyright © 2017 www.zgxue.com All Rights Reserved