微信小程序开发实战(网络请求设置)

本文涉及的产品
.cn 域名,1个 12个月
简介: 微信小程序开发实战(网络请求设置)

全局配置 - tabBar


什么是 tabBar❓


tabBar 是移动端应用常见的页面效果,用于实现多页面的快速切换。

小程序中通常将其分为:

  1. 底部 tabBar
  2. 顶部 tabBar

注意:

  1. tabBar中只能配置最少 2 个、最多 5 个 tab 页签
  2. 当渲染顶部 tabBar 时,不显示 icon,只显示文本

👨‍🦲tabBar 的 6 个组成部分


tabBar 的 6 个组成部分

① backgroundColor:tabBar 的背景色

② selectedIconPath:选中时的图片路径

③ borderStyle:tabBar 上边框的颜色

④ iconPath:未选中时的图片路径

⑤ selectedColor:tab 上的文字选中时的颜色

⑥ color:tab 上文字的默认(未选中)颜色

image.png

👨‍🦲tabBar 节点的配置项


image.png

👨‍🦲每个 tab 项的配置选项


image.png

👨‍🦲简单配置Tab栏


至少创建两个页面 👉 获取icon图标 👉 完成tab栏切换 如 👇

image.png

小程序的页面配置


页面配置文件的作用

小程序中,每个页面都有自己的 .json 配置文件,用来对当前页面的窗口外观、页面效果等进行配置。

页面配置和全局配置的关系

小程序中,app.json 中的 window 节点,可以全局配置小程序中每个页面的窗口表现。

如果某些小程序页面想要拥有特殊的窗口表现,此时,“页面级别的 .json 配置文件”就可以实现这种需求。

注意:当页面配置与全局配置冲突时,根据就近原则,最终的效果以页面配置为准。

页面配置中常用的配置项

image.png

网络数据请求


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


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

👉 只能请求 HTTPS 类型的接口

👉 必须将接口的域名添加到信任列表中 如 👇

1..png

小程序开发工具查看配置的域名 如 👇

image.png

2、 配置 request 合法域名


例如:希望请求 https://XXX.XXXXXX.XXX/ 域名下的接口


配置步骤:登录微信小程序管理后台 👉 开发 👉 开发设置 👉 服务器域名 👉 修改 request 合法域名


点注意事项如 👇

域名只支持 https 协议

域名不能使用 IP 地址或 Localhost

域名必须经过 ICP 备案

服务器域名一个月内最多可申请 5 次修改

3、小程序的GET 与 POST请求


  1. 调用微信小程序自带的 wx.request() 方法,可以发起 GET 数据请求
  2. 调用微信小程序自带的 wx.request() 方法,可以发起 POST 数据请求

代码 👇

image.png

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


在很多情况下,我们需要在页面刚加载的时候,自动请求一些初始化的数据。

此时需要在页面的 onLoad 事件中调用获取数据的函数,代码如 👇

image.png

5、 跳过 Request 合法域名校验


问题😶‍🌫️:如果后端程序员仅仅提供了 http 协议的接口、暂时没有提供 https 协议的接口。


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

2.png

注意: 跳过 Request 合法域名校验的选项,仅限在开发与调试阶段使用!

6、 关于跨域和 Ajax 的说明


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


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

小案例练习 (首页)


  • 实现项目步骤 如 👇
  1. 新建项目并梳理项目结构
  2. 配置导航栏效果
  3. 配置 tabBar 效果
  4. 实现轮播图效果
  5. 实现九宫格效果
  6. 实现图片布局

代码 👇

WXML

<!--顶部轮播图--><swiperindicator-dotsautoplay="true"interval="2000"><swiper-item><imagesrc="/Image/OIP-C.jpg"></image></swiper-item><swiper-item><imagesrc="/Image/OIP-C.jpg"></image></swiper-item><swiper-item><imagesrc="/Image/OIP-C.jpg"></image></swiper-item><swiper-item><imagesrc="/Image/OIP-C.jpg"></image></swiper-item></swiper><!--九宫格--><viewclass="list"><viewclass="item"wx:for="{{gridList}}"wx:key="id"><imagesrc="{{item.icon}}"></image><text>{{item.name}}</text></view></view><!--图片--><viewclass="box_img"><imagesrc="/Image/meitus.jpg"mode="widthFix"></image><imagesrc="/Image/meitus.jpg"mode="widthFix"></image></view>

WXSS

/*顶部轮播图*/swiper{
height: 150px;
}
swiperimage{
width: 100%;
height: 100%;
}
/*九宫格*//*1.nowrap项目不换行(这个是默认值)。2.wrap项目在超出容器时进行换行。3.wrap-reversewrap值,只是换成反序方向。*/.list{
display: flex;
flex-wrap: wrap;
border-top: 1pxsolidred;
border-left: 1pxsolidred;
}
/*row默认值。作为一行,水平地显示弹性项目。row-reverse等同行,但方向相反。column作为列,垂直地显示弹性项目。column-reverse等同列,但方向相反。initial将此属性设置为其默认值。参阅initial。inherit从其父元素继承此属性。参阅inherit。*/.item{
width:33.3%;
height: 200rpx;
display: flex;
flex-direction: column;
/*横向纵向居中*/align-items: center;
justify-content: center;
border-right: 1pxsolidred;
border-bottom: 1pxsolidred;
/*忽略边框大小*/box-sizing: border-box;
}
.itemimage{
width: 60rpx;
height: 60rpx;
}
.itemtext{
font-size: 24rpx;
margin-top: 10rpx;
}
/*图片*//*justify-content: space-between;  /*均匀排列每个元素*//*首个元素放置于起点,末尾元素放置于终点*//*justify-content: space-around;  /*均匀排列每个元素*//*每个元素周围分配相同的空间*//*justify-content: space-evenly;  /*均匀排列每个元素*//*每个元素之间的间隔相等*//*justify-content: stretch;       /*均匀排列每个元素*//*'auto'-sized的元素会被拉伸以适应容器的大小*/.box_img{
display: flex;
padding: 20rpx10rpx;
justify-content: space-around;
}
.box_imgimage{
width: 45%;
}

效果如 👇

100..gif

小总结


掌握👉 wx:if、wx:elif、wx:else、hidden、wx:for、wx:key

掌握👉 rpx 尺寸单位、@import 样式导入、全局样式和局部样式

掌握👉 pages、window、tabBar、style

掌握👉 对单个页面进行个性化配置、就近原则

掌握👉 wx.request() 方法、onLoad() 事件

最后


image.png

下篇文章再见ヾ( ̄▽ ̄)ByeBye

image.png


相关文章
|
4天前
|
移动开发 小程序 JavaScript
uni-app开发微信小程序
本文详细介绍如何使用 uni-app 开发微信小程序,涵盖需求分析、架构思路及实施方案。主要功能包括用户登录、商品列表展示、商品详情、购物车及订单管理。技术栈采用 uni-app、uView UI 和 RESTful API。文章通过具体示例代码展示了从初始化项目、配置全局样式到实现各页面组件及 API 接口的全过程,并提供了完整的文件结构和配置文件示例。此外,还介绍了微信授权登录及后端接口模拟方法,确保项目的稳定性和安全性。通过本教程,读者可快速掌握使用 uni-app 开发微信小程序的方法。
19 3
|
12天前
|
运维 安全 应用服务中间件
自动化运维的利器:Ansible入门与实战网络安全与信息安全:关于网络安全漏洞、加密技术、安全意识等方面的知识分享
【8月更文挑战第30天】在当今快速发展的IT时代,自动化运维已成为提升效率、减少错误的关键。本文将介绍Ansible,一种流行的自动化运维工具,通过简单易懂的语言和实际案例,带领读者从零开始掌握Ansible的使用。我们将一起探索如何利用Ansible简化日常的运维任务,实现快速部署和管理服务器,以及如何处理常见问题。无论你是运维新手还是希望提高工作效率的资深人士,这篇文章都将为你开启自动化运维的新篇章。
|
12天前
|
Java
【实战演练】JAVA网络编程高手养成记:URL与URLConnection的实战技巧,一学就会!
【实战演练】JAVA网络编程高手养成记:URL与URLConnection的实战技巧,一学就会!
26 3
|
12天前
|
小程序
Taro@3.x+Vue@3.x+TS开发微信小程序,设置转发分享
本文介绍了Taro中`useShareAppMessage`的使用方法,需在页面配置`enableShareAppMessage: true`并重新编译。
Taro@3.x+Vue@3.x+TS开发微信小程序,设置转发分享
|
12天前
|
小程序 数据安全/隐私保护
Taro@3.x+Vue@3.x+TS开发微信小程序,网络请求封装
在 `src/http` 目录下创建 `request.ts` 文件,并配置 Taro 的网络请求方法 `Taro.request`,支持多种 HTTP 方法并处理数据加密。
Taro@3.x+Vue@3.x+TS开发微信小程序,网络请求封装
|
8天前
|
SQL 安全 网络安全
网络安全之盾:漏洞防御与加密技术的实战应用
【9月更文挑战第2天】在数字时代的浪潮中,网络安全成为保护个人隐私和企业资产的坚固盾牌。本文深入探讨了网络安全的两个核心要素:防御漏洞和加密技术。我们将从基础概念入手,逐步剖析常见的网络攻击手段,并分享如何通过实践加强安全意识。同时,提供代码示例以增强理解,旨在为读者构建一道坚不可摧的网络安全防线。
|
10天前
|
开发者 图形学 API
从零起步,深度揭秘:运用Unity引擎及网络编程技术,一步步搭建属于你的实时多人在线对战游戏平台——详尽指南与实战代码解析,带你轻松掌握网络化游戏开发的核心要领与最佳实践路径
【8月更文挑战第31天】构建实时多人对战平台是技术与创意的结合。本文使用成熟的Unity游戏开发引擎,从零开始指导读者搭建简单的实时对战平台。内容涵盖网络架构设计、Unity网络API应用及客户端与服务器通信。首先,创建新项目并选择适合多人游戏的模板,使用推荐的网络传输层。接着,定义基本玩法,如2D多人射击游戏,创建角色预制件并添加Rigidbody2D组件。然后,引入网络身份组件以同步对象状态。通过示例代码展示玩家控制逻辑,包括移动和发射子弹功能。最后,设置服务器端逻辑,处理客户端连接和断开。本文帮助读者掌握构建Unity多人对战平台的核心知识,为进一步开发打下基础。
29 0
|
10天前
|
安全 开发者 数据安全/隐私保护
Xamarin 的安全性考虑与最佳实践:从数据加密到网络防护,全面解析构建安全移动应用的六大核心技术要点与实战代码示例
【8月更文挑战第31天】Xamarin 的安全性考虑与最佳实践对于构建安全可靠的跨平台移动应用至关重要。本文探讨了 Xamarin 开发中的关键安全因素,如数据加密、网络通信安全、权限管理等,并提供了 AES 加密算法的代码示例。
23 0
|
10天前
|
SQL 安全 网络安全
网络防御前线:漏洞识别与加密技术的实战应用
【8月更文挑战第31天】在数字化浪潮下,网络安全成为守护数据资产的盾牌。本文深入浅出地探讨了网络安全漏洞的成因与对策,并结合实例展示了加密技术的应用。通过提升安全意识与实践操作,我们能够有效防范网络威胁,保护个人与企业的信息不受侵害。
|
10天前
|
安全 Apache 数据安全/隐私保护
你的Wicket应用安全吗?揭秘在Apache Wicket中实现坚不可摧的安全认证策略
【8月更文挑战第31天】在当前的网络环境中,安全性是任何应用程序的关键考量。Apache Wicket 是一个强大的 Java Web 框架,提供了丰富的工具和组件,帮助开发者构建安全的 Web 应用程序。本文介绍了如何在 Wicket 中实现安全认证,
22 0

热门文章

最新文章

下一篇
DDNS