【微信小程序】网络数据请求

本文详细介绍了微信小程序中网络数据请求的限制,包括只能使用HTTPS和需配置合法域名。并展示了如何配置request合法域名,发起GET和POST请求的示例代码。此外,还讲解了在页面加载时请求数据的方法以及在开发环境中如何跳过合法域名校验。最后,澄清了小程序中不存在跨域问题,并解释了与Ajax的区别。
摘要由CSDN通过智能技术生成

目录

一、小程序中网络数据请求的限制

二、配置request合法域名

三、发起GET请求

四、发起POST请求

五、在页面刚加载时请求数据

六、跳过request合法域名校验

七、关于跨域和Ajax的说明


一、小程序中网络数据请求的限制

出于安全性方面的考虑,小程序官方对数据接口的请求做出了如下
两个限制:

1.只能请求HTTPS类型的接口

2.必须将接口的域名添加到信任列表中


二、配置request合法域名

需求描述:假设在自己的微信小程序中,希望请求https:/ /www.yzq2ty.cn/域名下的接口
配置步骤:登录微信小程序管理后台->开发->开发设置->服务器域名->修改request合法域名
注意事项:

1.域名只支持https协议
2.域名不能使用IP地址或localhost
3.域名必须经过ICP备案
4.服务器域名一个月内最多可申请5次修改

三、发起GET请求

uni.request({
			url:baseURL+options.url,
			method:options.method || 'GET',
			data:options.data ||{},
			header:options.header||{},
			dataType:options.dataType||'json',
			success: (res) => {
				resolve(res.data)
			},
			fail:(err)=>{
				reject(err)
			}
		})

四、发起POST请求

我的项目在登录时,需要发起POST请求

import request from '../utils/request.js'
export function getLogin(username,password){
	return request({
		url:'/login',
		method:'POST',
		data:{
			username,password
		}
	})
}


五、在页面刚加载时请求数据

在很多情况下,我们需要在页面刚加载的时候,自动请求- -些初始化的数据 。此时需要在页面的onLoad事件中调用获取数据的函数,示例代码如下:

	onLoad() {
			uni.getSystemInfo({//获取系统信息
				success: (res) => {
				
					// #ifdef H5
					this.scrollH = res.windowHeight - uni.upx2px(88)
					//#endif
					// #ifndef H5
					this.scrollH = res.windowHeight - uni.upx2px(225)
					//#endif

				}
			}),
			this.gethome()
			
		this.qqmapsdk = new QQMapWX({
						key: '3SUBZ-W5BCQ-FLM5G-GYOPG-D523V-DUFNH'
					});
			
			
		},


六、跳过request合法域名校验

如果后端程序员仅仅提供了http协议的接口、暂时没有提供https协议的接口。

此时为了不耽误开发的进度,我们可以在微信开发者工具中,临时
开启「开发环境不校验请求域名、TLS版本及HTTPS证书」
跳过request合法域名的校验。

七、关于跨域和Ajax的说明

跨域问题只存在于基于浏览器的Web开发中。由于小程序的宿主环境不是浏览器,而是微信客户端,所以小程序中不存在跨域的问题。

Ajax技术的核心是依赖于浏览器中的XMLHttpRequest这个对象,由于小程序的宿主环境是微信客户端,所以小程序中不能叫做“ 发起Ajax请求”,而是叫做“ 发起网络数据请求”。




 

评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小余努力搬砖

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值