🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
### API的应用:将Mugeda部署在第三方服务器 * * * * * Mugeda制作的内容可以很方便的直接发布到Mugeda CDN。参见下图。发布到Mugeda CDN后,你会得到一个发布地址,该地址可以用来进行分享。Mugeda会自动处理所有必要的操作,例如微信权限认证等。 ![](https://box.kancloud.cn/6e6c039e6234ca3b2ac8317e876837c7_780x577.jpg) 如果你选择导出Mugeda内容并自行部署到一个第三方的服务器上,Mugeda提供一套完善的机制来支持这些操作。简单来说,需要完成如下步骤: 1、你拥有一个微信公众号,和一个绑定了微信的域名; 2、你知道如何获取有效的微信认证信息; 3、用微信认证信息对Mugeda内容进行配置; 4、部署配置后的内容; 下面详细介绍每一个步骤。 1、你拥有一个微信公众号,和绑定了微信的域名 任何一个可以在微信中进行分享的域名,都必须通过微信的认证并绑定域名。为了绑定域名,你必须先有一个公众号。有了公众号后,登录微信公众平台进入“公众号设置”的“功能设置”里填写“JS接口安全域名”。关于如何申请公众号以及如何进行微信域名绑定,不在本文讨论范围。请咨询你们的微信管理员或者访问微信官方文档。 以下的讨论假定你已经拥有一个绑定了微信的域名。 2、你知道如何获取有效的微信认证信息 拥有微信绑定的域名后,你还需要有有效的微信认证信息。典型的微信认证信息包括: appId: 分配给公众号的唯一标识 timestamp: 生成签名的时间戳 nonceStr: 生成签名时的随机串 signature: 认证需要的签名 关于如何获取或者生成这些参数,请参考微信官方开发文档。这里不再赘述。需要强调的是,由于微信签名认证信息有效期为7200秒,即2个小时,因此在第三方部署时需要保证这些信息在必要时需要实时更新,保障总是能够获取到最新的认证信息。 以下的讨论假定你已经拥有了有效的微信认证信息。 3、 用微信认证信息对Mugeda 内容进行配置 当你准备好了上述数据,我们就可以对Mugeda内容进行配置了。步骤如下: 首先在Mugeda云编辑器中导出想要发布的内容: ![](https://box.kancloud.cn/183414b93edd9dbd88374b63784259e3_780x387.jpg) 导出后会得到一个完整的HTML5内容包。 在内容包中包含有一个index.html文件,这个文件是我们配置的对象。用文本编辑器打开该文件。 ![](https://box.kancloud.cn/6a71e2ee69aaeb13d0d16a6ff8462e51_780x641.jpg) 在index.html文件中,有一个参数变量叫做_mrmcp,这个变量记录了Mgueda内容进行播放时的一系列控制参数。我们需要定制的就是在这个参数列表中加入我们需要的信息。 ![](https://box.kancloud.cn/109c0bd40f7b84363f313312863cf937_780x378.jpg) 配置信息可以包括微信认证信息,_mrmcp.wechatAuth。所需参数参见上述第2步的描述。配置好后的_mrmcp参数如下图所示: ![](https://box.kancloud.cn/791c5beb84c69be4a71ceca880f34b4d_780x348.jpg) **需要说明的是: ** 1. 由于微信权限设置有时间限制(7200秒),因此这些权限信息,主要是签名signature和时间戳timestamp参数,需要及时进行更新。可以参考的办法,是在服务器端通过动态技术(例如php等)动态生成这些信息,或者在页面中通过动态技术(例如Ajax请求)获取这些信息,并配置相应的_mrmcp参数。 2. 如果采用异步Ajax等异步技术加载权限信息时,index.html中名为loader.js的脚本文件,需要在Ajax处理完成后才能加载,否则可能会导致加载或者渲染异常。 3. 对Mugeda内容进行第三方部署时,仅需要按照上述步骤配置_mrmcp.wechatAuth参数即可,不需要再次加载微信的SDK JS文件(本文生成时地址为 http://res.wx.qq.com/open/js/jweixin-1.0.0.js),也不需要再次调用wx.config, wx.ready或者wx.onMenuShareTimeline等函数。这些具体的操作Mugeda内容都会自动完成。否则可能会导致分享和权限异常。 4. 部署配置后的内容:完成上述步骤后,就可以将配置后的内容部署到目标第三方服务器上,并将部署后的地址发布出去就可以了。对上述流程如有疑问,可以加入Mugeda学习群(QQ: 263360290)进行交流。