在当下云开发非常火爆,不过我并不是很感冒,因为他的好处明显,但缺点也是致命性的。 好处有1. 不用自己买服务器,域名认证,不用担心服务器过期;省去了很多时间。2. 初始容量免费,基本够用。

缺点就是不能跨平台。这个就很伤了,我们开发一款网页游戏不可能只上一个平台吧!虽然我们可以上所有拥有云开发能力的平台,但是毕竟没有云开发能力的平台也很多啊!

不过例如网页游戏排行榜这样的功能还是可以用一下的。顶多就是没有云开发能力的平台不显示排行榜功能就是了。

我是用这个云开发能力做了一个比较完整的买卖系统。进入这个系统后所有数据联网获取,离开这个系统单机玩法。所以没有云开发能力的平台也就只能体验单机部分了。

这里我以微信云开发为例:

1.开通服务 这一步要注意的是使用的appId 不能是测试id,否则你的云开发按钮是不可点击的。 这一步结束之后你会获得一个环境id。

2.初始化

wx.cloud.init({env: 'test-x1dzi'
})

将上一步获得的环境id传入init函数即做好了初始化工作,而且此方法是没有返回值的。 3. 调用云函数

wx.cloud.callFunction({name: 'add',data: {a: 12,b: 19}
}).then(console.log)

基本在小程序端的重要部分就这些了。当你看过了几个支持云开发的平台说明文档后你会发现,他们在小程序端的使用方式其实是一样的。只是命名空间的不同而已。所以在小程序端很容易做好多平台支持的。 剩下的就是写云函数了。微信云其实就是nodejs服务器。每一个云函数你可以理解为后端经过路由后调用的函数。只是在调试和上传上的方式上有所不同而已。

这里的调试是比较难受的,首先用creator打出来的包云函数目录是会被清理的,如果你把函数目录放到build-template中你又没法像在微信开发者工具中一样及时的看效果。又不能在开发者工具中改动一下就复制一份到build-template中。由于我的系统没那么复杂,所以目前就是每次打包后重新下载我需要的云函数。其实可以写个插件,在打包之前把云函数存放到一个地方,打完包之后再放回来。

开发方式
我的开发方式比较简单,直接将小程序端的云函数调用写成一个服务,添加到我的网络框架中,就跟我用长短链接一样使用了。
文章地址:https://mp.weixin.qq.com/s/DQuiQejiS6qtBTef_yu0Sw 扩展的方式很简单

1.定义一个新的链接方式。
2.定义类,实现接口 这里的url 就是环境id,协议号就是云函数的名称。 对于sendData类中的接收方式可以自己随意更改。

export default class WXCloudService extends Service {/*** 由于init函数无返回值,所以直接通知链接成功* @param url 相当于环境ID* @param port 无用*/connect(url: string, port?: number) {super.connect(url);console.log("WXCloudService connect  url  ", url)wx.cloud.init({env: url})this.emit(NetConfig.OPEN, url);}sendData(message: SendMessage) {let self = this;let protoID = message.getProtoID();let data = message.getData();console.log("WXCloudService sendData  protoID  ", protoID,' data ',data)wx.cloud.callFunction({// 需调用的云函数名name: protoID,// 传给云函数的参数data: data,success: function (res) {console.log('WXCloudService  success res  ', res)self.onData(res.result, protoID);},fail: function (res) {console.log('WXCloudService  fail res  ', res)self.onError(message);},complete: function (res) { },})}isReady() {return true;}
}

3.在工厂中创建
4.链接时使用之前定义的Netconfig.CLOUD
5.使用方式我已经在《一个可屏蔽长短链接的网络模块》文章中说过,这里就不在赘述了。

注意事项
1.云函数的创建,使用后台创建的云函数,和在开发者工具中创建的云函数不同。我最终选择使用开发者工具创建,然后上传。
2.本地调试,有时候没有发现任何错误,调试就是启动失败,删了云函数,重新下载再启动就好使了。
3.千万记住,云函数上传之后再用creator打包,否则你的函数就白写了。所以最好还是用一种你熟悉的方式,在打包的时候动手脚。
4.不建议使用doc函数,它只支持传入_id 。

最后

本人是一个人游戏行业8年从业者,如果关于网页游戏大全有什么问题提议,或者对这篇有什么问题,大家来评论讨论讨论吧。

网页游戏小游戏云开发的心得相关推荐

  1. 个人微信小程序云开发总结心得

    文章之前: 先附上通过微信小程序云开发做出的两个小程序,有兴趣的朋友可以微信扫码进去看看,欢迎登录学习 . 框架采用移动端常用UI: Vant 微信云开发官方文档:微信开发文档 相关的npm包导入方法 ...

  2. 壁纸小程序云开发 -- 分享心得

    QQ技术交流群:671702647 前端截图: 后端截图: 后端演示: 点击查看后端演示地址 测试账号:maoeus 测试密码:123456 实现 : 前后端全部使用云开发+uniapp完成开发

  3. 微信小程序云开发--拼图游戏

    声明:在写这个拼图游戏以前也参看过很多其他的小程序拼图相关的列子.我的这个与其他的不同,是采用小程序云开发的模式,省去了服务器,供读者参考,同时,也希望各位能帮忙扫下二维,点一下小广告.挣钱不容易,谢 ...

  4. 我的《上勾拳》网页单机小游戏有什么版权问题吗

    很遗憾,你上传的[<上勾拳>网页单机小游戏,发泄类型,可以自己上传音效适配,适配PC和安卓.大部分元素为SVG动画,云彩和火焰是canvas动画]没有通过审核,原因是:版权,如有疑问,请联 ...

  5. 小程序云开发支持公众号网页开发了

    小程序云开发,这波更新有料! 云开发(Tencent Cloud Base) 做前端的同学基本上或多或少都接触过小程序,但是,接触过小程序的同学不一定接触过云开发 普及一下 云开发是一种典型的 Ser ...

  6. 如何在html上放小游戏,如何在网页插入小游戏

    如何在网页插入小游戏,有两种方法: 方法一:使用IE浏览器1.首先打开一个小游戏,等待他加载完毕,也就是等游戏可以玩的时候: 2.在浏览器的菜单栏上面,点击[工具],然后选择[internet选项]: ...

  7. HTML5高度还原复古24层魔塔网页版小游戏源码

    简介: HTML5高度还原复古24层魔塔网页版小游戏源码 网盘下载地址: http://kekewl.cc/OFfi6keX7OS0 图片:

  8. php翻牌游戏代码,H5响应式网页翻牌小游戏代码

    H5响应式网页翻牌小游戏代码 body { margin: 0; padding: 0; } .tile { display: block; float: left; border-radius: 5 ...

  9. 基于小程序·云开发构建高考查分小程序丨实战

    2019高考报名人数达到了 1031 万的新高,作为一名三年前参考高考的准程序猿,赶在高考前,加班加点从零开始做了一款高考查分小程序,算是一名老学长送给学弟学妹们的高考礼.上线仅 1 个月,用户数就突 ...

  10. 关于微信小程序云开发---实现客服自动回复图片例子

    关于微信小程序云开发-实现客服自动回复例子 微信自带的云开发功能使前端工程师可以独立的开发出一款小程序,微信自带的云开发. 首先和开发其他平台的项目一样先看官方文档. 微信小程序开放文档 一. 什么是 ...

最新文章

  1. input 默认样式的修改
  2. 干货|理解attention机制本质及self-attention
  3. ID3、C4.5、C5.0、CART决策树区别
  4. NS4146 D类音频放大电路
  5. 使用while语句修改后的效果和for一样
  6. 【学习笔记】C#中的单元测试
  7. Jass 技能模型定义(转)
  8. 从零开始实现multipart/form-data数据提交
  9. HTML2em一定是32px,px,em,rem的区别
  10. Word两端对齐问题
  11. FFmpeg之获取音视频信息(二十八)
  12. Mysql数据库启动命令
  13. 双层pdf解析 java_java转双层pdf
  14. 小米与泰尔实验室联合发布《多模态技术白皮书》
  15. matlab中的freqz函数是什么意思,的频率响应函数freqz().ppt
  16. 【WordNet】词典——omw-1.4下载
  17. 计算机图形学中的常用模型
  18. php怎么弄三角形,css中怎么设置三角形
  19. 【前端学习之HTMLCSS】-- 视觉格式化模型之二 浮动 -- 练习
  20. Cocos Creator皮毛功能之拖动多选扑克麻将

热门文章

  1. 问题:munmap_chunk(): invalid pointer
  2. 计算机控制课程设计pid控制,自动化计算机控制课程设计参考题目
  3. spring如何注入作用域不同的bean
  4. 基于matleb对音频信号的频谱分析(幅频)和滤波分析
  5. nginx公网IP无法访问浏览器
  6. 汽车金融系统设计-需求篇
  7. 华为RS3 封层模型及以太网帧结构
  8. python根据url获得m3u8_python爬取m3u8连接的视频
  9. 防抖和节流的理解与实现
  10. 读书笔记-天才和凡人