微信小游戏:主域子域

本文介绍了微信小游戏中的主域和子域概念,重点讲解了开放数据域的作用,即保护用户隐私并提供特定接口访问用户数据。主域包含游戏所有接口,而子域用于访问用户好友数据。在子域中,可以调用wx.getUserCloudStorage、wx.getFriendCloudStorage和wx.getGroupCloudStorage等接口获取数据。wx.postMessage用于主域向子域发送消息,而子域不能主动发送消息。最后提到了Cocos Creator在制作好友排行榜微信小游戏中的应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

主域

  • 通常我们所有的功能在主域中就可以完成,主域中有游戏开发所需的所有接口。但是当我们想要做需要访问用户好友数据信息的时候,就需要用到开放数据域中的接口,开放数据域中的接口只能在子域中访问,这也就是我们为什么需要用到子域的原因。

  • 子域存在的目的主要是为了保护玩家的隐私,因为子域中不能调用除特定接口外的其他接口,所以开发者并不能获取玩家的隐私信息。如果在主域中可以调用,那么有些开发者或许会把这些信息发送到自己的服务器,所以微信会限制开放数据域的访问范围。

子域

开放数据域 是一个封闭、独立的 JavaScript 作用域。要让代码运行在开放数据域,需要在 game.json 中添加配置项 openDataContext 指定开放数据域的代码目录。如果使用Cocos Creator,可以再创建一个独立的工程,发布的时候选择微信开放数据域即可。
wx.getUserCloudStorage、wx.getFriendCloudStorage() 和 wx.getGroupCloudStorage() 只能在 开放数据域 中调用。如果在主域中调用会得到 TypeError: wx.getUserCloudStorage is not a function TypeError: wx.getFriendCloudStorage is not a function TypeError: wx.getGroupCloudStorage is not a function

  • wx.getUserCloudStorage 获取当前用户托管数据当中对应 key 的数据。该接口只可在开放数据域下使用, keyList字段是wx.setUserCloudStorage()中定义的字段中的key
wx.g
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值