网络请求
网络请求能力可以帮助开发者让小游戏与后台服务器建立联系,如果你是JavaScript程序员,那么你将很快学会使用网络请求积木,功能上没有JavaScript这么强大,但能够满足基本的需求。注意:此功能只能在发布到独立的小游戏使用,其他环境会无效。因为web上会存在跨域问题,而小游戏可视化助手上,没有设置开发者的安全域名。因此独立的小游戏需要在mp管理后台设置安全域名。
顶部工具栏有的插件入口添加网络请求插件:
添加插件后即可在积木面板中使用插件相关的积木:
网络请求插件一共提供了三个积木:
积木介绍:
[请求网络接口]
有点类似if-else积木,分别处理请求成功和失败的逻辑,参数支持url和数据,数据是POST方式发生给后台。如果数据想以GET方式发送,则自行在url拼接参数如:https://xxx.com?a=1&b=1 。
数据格式支持三种
- json字符串,如积木的默认文字:{"a":1,"b":2}
- 连接符字符串:a=1&b=1,系统会默认解析成对象{a:1,b:1}
- 对象{a:1} ,请求参数是一个对象,新建一个对象,给对象设置属性
返回值
如果网络的 status === 200 表示会进入成功的分支,否则是失败的分支。
“当前请求的返回值”积木指向了当前的返回值,是一个对象,成功的是成功的对象,失败的另一个失败的对象。通过对象属性读取的积木可以获你想要的值。
注意:此积木只能在请求成功和失败分支条件的第一层级获取到返回值。如下图,第2和第3个打印出来的是空对象,因此这种情况下建议用一个变量保存。
请求嵌套
网络请求可以且套多级,比如先请求A,再请求B,这个过程是串行的。如下图所示:
请求阻塞
网络请求是一个异步的过程,当执行到改积木的时候,等到服务器响应后返回结果才会继续执行后续的积木,可以理解为暂时挂起了。而且后续的积木都不会被执行,直到响应回调处理完成。
最下面的消息提示框要等网络请求处理完成才会执行。
[微信登录]
实际底层调用的是wx.login接口,分叉积木用于处理成功和失败的回调。
此接口也是异步的过程,因此成功和失败和网络请求的接口处理是一样的,同样也会阻塞后续的积木。
返回值code通过下面的方式获取。
实际用法可以参考此Demo