当前位置:网站首页>微信小程序开发之网络数据请求
微信小程序开发之网络数据请求
2022-07-25 19:24:00 【Aricl.】
目录
二、配置服务器合法域名
三、发起请求
一、限制
出于安全性考虑,小程序官方对数据接口的请求做出了如下两点限制:
- 只能请求HTTPS类型的接口
- 必须先将接口的域名添加到信任列表中

二、配置服务器合法域名
配置步骤:
- 登录微信小程序管理后台 链接
- 点击开发
- 开发管理
- 开发设置
- 服务器域名
- 点击右上角修改requst合法域名


注意事项:
- 域名只支持https协议
- 域名不能使用IP地址或者localhost
- 域名必须经过ICP备案(后端了解)
- 服务器域名一个月内最多可申请5次修改(官网信息有误,社区工作人员已经做出解释)

三、发起请求
(1)GET请求
//发起GET请求
getInfo(){
wx.request({
url: 'https://XXX',//所要请求的接口地址
method:'GET',//请求的方式
data:{
name:'XX',
age:20
},
//请求成功的回调函数
success:(res)=>{
console.log(res)//打印服务器返回的对象
},
//请求失败的回调函数
fail:(res)=>{
console.log('请求数据失败!')
},
//无论请求成功与否都会执行的函数
complete:(res)=>{
console.log('已经发送网络数据请求!')
}
})
},(2)POST请求
//发起POST请求
getInfo(){
wx.request({
url: 'https://XXX',//所要请求的接口地址
method:'POST',//请求的方式
data:{
name:'XX',
age:20
},
//请求成功的回调函数
success:(res)=>{
console.log(res)//打印服务器返回的对象
},
//请求失败的回调函数
fail:(res)=>{
console.log('请求数据失败!')
},
//无论请求成功与否都会执行的函数
complete:(res)=>{
console.log('已经发送网络数据请求!')
}
})
},(3)二者区别
如果你要提交一篇文章,肯定只能用post,因为数据量太大,get请求类似浏览器url请求,你把一篇文章放到url里面肯定请求不过去,如果你只是个简单的传id或者比较少的参数可以用get,还有就是有密码输入建议用post,post请求参数不会以明文显示在url上。
一句话:GET请求可以把参数包含在URL中,但POST请求需要通过request body来传递参数。
参考文章:GET与POST二者的通俗化解释
四、 跳过requst合法域名校验
如果在开发中,后端程序员仅仅提供了http协议的接口,暂时没有提供https协议的接口,此时为了不耽误项目开发进度,可以现在微信开发者工具的项目详情里面的本地设置,将【不校验合法域名、web-view(业务域名)、TLS版本以及HTTPS证书】勾选上,以此来暂时跳过合法域名的检测机制(这一操作仅限在开发与调试阶段使用!)

五、关于跨域和Ajax的说明
(1)跨域问题只存在于基于浏览器的Web开发中。由于小程序的宿主环境是微信客户端,所以小程序中是不存在跨域问题的。
(2)Ajax技术的核心是依赖于浏览器中的XML HttpRequst这个对象,由于小程序的宿主环境是客户端,所以小程序中没有“ 发起Ajax请求”的说法,而是称为“ 发起网络数据请求 ”
边栏推荐
- 小程序毕设作品之微信校园维修报修小程序毕业设计成品(6)开题答辩PPT
- i3-status 配置
- Youfu network was invited to attend the 2022 national CIO conference and won the title of "CIO trusted brand"
- Hongmeng - Damiao computing Sketchpad - Introduction
- Introduction of this course (Introduction to machine learning)
- HTTP cache tongtianpian, there may be something you want
- Improvement of wechat applet 26 playing music page ②
- 伺服驱动器在机器人上的研究与应用
- 这种动态规划你见过吗——状态机动态规划之股票问题(上)
- [919. Complete binary tree inserter]
猜你喜欢
随机推荐
Hongmeng - Damiao computing Sketchpad - VIDEO
Pymoo learning (7): Parallelization
哪吒 D1-H 测试 microbench
I3 status configuration
Real estate industry reshuffle
Pyqt5 click qtableview vertical header to get row data and click cell to get row data
Basic music theory -- configuring chords
Use of swift basic codable (jsonencoder jsondecoder)
Sccm2012r2 network deployment reinstallation system
【Web技术】1391- 页面可视化搭建工具前生今世
Fruit chain "siege": it's a journey of sweetness and bitterness next to apples
【HDLBits 刷题】Verilog Language(3)Modules: Hierarchy 部分
[919. Complete binary tree inserter]
InTouch advanced alarm (alarm filtering)
How to ensure the consistency of double write between database and cache?
基于FPGA的1080P 60Hz BT1120接口调试过程记录
JS learning notes 16: switching pictures small project practice
李宏毅《机器学习》丨1. Introduction of this course(机器学习介绍)
聊聊接口性能优化的11个小技巧
Swift 基础 Codable(JSONEncoder JSONDecoder)的使用









