• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >微信公众号 > 微信开发帐号基于IBM Bluemix的实例详解

微信开发帐号基于IBM Bluemix的实例详解

作者:匿名 字体:[增加 减小] 来源:互联网

匿名通过本文主要向大家介绍了微信,IBM,Bluemix等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com
摘要:IBM发布了Bluemix,而微信公共平台的账号已经达到了200多万,如果能利用Bluemix开发微信公共平台应用,这对于广大微信开发者来说是个大福音。

【编者按】IBM 最近发布了Bluemix, 这是一个基于开放标准的平台即服务 (PaaS) 环境,用于在云中构建、运行和管理 Web 和移动应用程序。而微信公共平台的账号已经达到了 200 多万,因此如果能利用 Bluemix 开发微信公共平台应用,笔者认为将为广大的微信开发者学习、部署、测试、直至形成商业应用带来福音,所以笔者通过研究,成功完成了基于 Bluemix 的微信公共平台应用开发,在此做一些简要的介绍,以便于微信公共开发者推进深化应用。

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

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

申请 Bluemix 账号

下载并安装 Cloud Foundry 程序

编制一个应用的配置文件

在微信公众平台设置为开发模式

设置一个基于 Bluemix 的网址 URL

设置微信公众平台应用的令牌(Token)

下载微信公众平台的范例程序,笔者采用 PHP 语言,对该程序进行修改,设置令牌(TOKEN)

上传(push)PHP 文件,应用开始执行

在微信公众平台中,验证通过编辑模式。

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

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

图 1.系统框架

54758fd4f21b4.jpg

过程描述

申请 Bluemix 账号

进入网址: www.bluemix.net

图 2

547590f552731.jpg

下载并安装 Cloud Foundry 程序

图 3

5475910923dde.jpg

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

图 4

5475915f50f0f.jpg

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

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

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

编制一个应用的配置文件

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

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

说明:

name 指定了应用的名称

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

lzhfirstphp. ng.bluemix.net

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

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

文件格式需要指定为 UTF-8 的格式

设置应用名称时,需要注意不能重复。

设置 HOST 名称时,尽可能长一些,或者按照个人姓名、公司名称进行设置,笔者上传部署时曾经出现过错误,估计是名称重复,后来修改后,部署成功。

在微信公众平台设置为开发模式

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

图 5

5475917d25f39.jpg

图 6

54759186a9b5a.jpg

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

图 7

547591a614806.jpg

设置一个基于 Bluemix 的网址

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

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

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

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

图 8

547591c32f818.jpg

清单 1

<?php/**  * wechat php test  *///define your tokendefine("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 dataif (!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 文件,如果上传正确,则等待应用执行。

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

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

图 9

547591eb1f04b.jpg

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

此处输入

分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • 跳转到微信指定扫码关注网页(附代码)
  • 微信开发教程:自动回复消息和客服消息,文本带链接跳转
  • 微信公众号里“JS接口域名”实现分享功能
  • 微信支付验证或签名失败是什么原因?附三种解决方案
  • android微信登陆、分享做了一段时间了发现的一些坑
  • 最新整理出的微信分享后端接口实现的大致流程
  • 长见识了,原来微信浏览器内可以直接启动外部浏览器
  • 怎么创建微信公众号自定义菜单栏?这里给出了权威解答
  • 微信小游戏基于微信开发工具入门讲解
  • 关于微信自定义分享功能的实现代码

相关文章

  • 概述微信开发
  • 微信公众平台开发 上传下载多媒体文件
  • asp.net微信开发开发者接入技巧
  • 微信开发之处理微信客户端发来的消息
  • 使用require.js+vue开发微信上传图片组件方法
  • 微信开发之制作一个跑步微信小程序
  • 使用Android实现微信小视频录制功能详细介绍
  • java微信开发API服务器接入详解
  • 使用python搭建微信公众平台方法
  • 微信扫码支付模式

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • 微信开发入门(八)页面路由
    • 微信公众账号开发自定义菜单的经验总结
    • ASP.NET代码轻松实现微信抢红包
    • 郑州微信小程序开发培训之开发语言
    • 微信硬件H5开发之控制灯光
    • 微信二次开发之各类型消息封装
    • asp.net开发微信公众平台(2)多层架构框架搭建和入口实现
    • 微信开发之JS API支付的实例详解
    • 详解使用php调用微信接口上传永久素材
    • C#开发微信门户及应用-微信企业号的菜单管理

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有