什么是同步和异步
- 同步
- 在主线程上排队执行的任务,只有前一个任务执行完毕,才能继续执行下一个任务。
- 也就是一旦调用开始,就必须等待其返回结果,程序的执行顺序和任务排列顺序一致。
- 客户端必须等待服务器端的响应。在等待的期间客户端不能做其他操作
- 异步
- 发出调用请求后,调用者不必等待其返回结果再次执行其他操作,只要发出请求后,即可继续执行后续操作。
- 异步任务不进入主线程,而进入任务队列的任务,只有任务队列通知主线程,某个任务可以执行了,该任务才会进入主线程。
- 程序的执行顺序和任务排列顺序不一致,是异步的。
- 客户端不需要等待服务器端的响应。在服务器处理请求的过程中,客户端可以进行其他的操作。
Ajax
- Ajax 是一种在无需重新加载整个网页的情况下 ,能够更新部分网页的技术。
- 通过在后台与服务器进行少量数据交换,Ajax 可以使网页实现异步更新。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新。
- 传统的网页(不使用 Ajax)如果需要更新内容,必须重载整个网页页面。
微信小程序上实现异步请求
代码书写
- index.js中
javascript
// 发送请求
sendRequest(){
wx.request({
url: 'http://localhost:8080/user/shop/status',
method: 'GET',
success: (res)=>{
// 这里的data不是后端中返回的data,而是固定的写法
// 代表的是后端整个的json数据
// 后端响应的数据是一个json数据,包含code,msg,data{}
console.log(res.data)
}
})
}
- index.wxml中
html
<view>
<button bind:tap="sendRequest" type="default">发送请求</button>
</view>
结果展示
注意事项
- 苍穹外卖 后端 要是启动状态
- 微信小程序设置"不检验合法域名"
参考文章
https://blog.csdn.net/weixin_42653522/article/details/106314957
https://blog.csdn.net/weixin_45060598/article/details/120686932