• 【微信小程序】一文带你搞懂小程序的页面配置和网络数据请求


    页面配置

    每个小程序页面都有一个.json文件,该文件用来对小程序的页面进行配置。

    页面配置文件的作用

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

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

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

    如:当在app.json中全局配置导航栏的文字为苏凉时,此时每个页面的导航栏标题都为苏凉

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

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

    页面配置

    在页面配置文件(.json)中我们可以通过修改以下属性来配置页面文件。

    属性名类型默认值说明
    navigationBarTitleTextString字符串导航栏标题文字内容
    navigationBarBackgroundColorHexcolor#000000导航栏背景颜色,如#000000
    navigationBarTextStyleStringwhite导航栏标题颜色,仅支持black / white
    backgroundColorHexcolor#ffffff窗口的背景色
    backgroundTextStylestringdark下拉 loading的样式,仅支持dark / light
    enablePullDownRefreshBooleanfalse是否全局开启下拉刷新
    onReachBottomDistanceNumber50页面上拉触底事件触发时距页面底部距离,单位为px

    如:
    在这里插入图片描述

    网络数据请求

    网络数据请求的限制

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

    1. 只能请求HTTPS类型的接口
    2. 必须将接口的域名添加到信任列表中,如下图所示:
      在这里插入图片描述

    下面我们一起来看看如何进行域名配置。

    配置request合法域名

    步骤:

    1. 登录小程序管理后台:微信小程序管理后台
      在这里插入图片描述

    2. 下拉点击开发下的开发设置
      在这里插入图片描述

    3. 下拉找到服务器域名,点击开始配置
      在这里插入图片描述

    4. 微信扫码进行身份验证,手机上点击开启
      在这里插入图片描述
      5.输入你需要配置的域名,保存并提交。
      在这里插入图片描述
      此时在服务器域名中存在了刚刚所提交的域名。即设置成功。
      在这里插入图片描述

    回到微信小程序开发者工具;详情-项目配置-request合法域名中就保存了刚才我们在小程序管理后台中配置的域名了。此时我们就可以在小程序中合法使用这两个域名。
    在这里插入图片描述

    配置服务器域名注意事项:

    1. 域名只支持https协议
    2. 域名不能使用IP地址或localhost
    3. 域名必须经过ICP备案
    4. 服务器域名一个月内最多可申请5次修改(小程序管理后台显示还可修改49次,为显示bug,实际上就只有5次,请谨慎使用。)

    发起get/post请求

    调用微信小程序提供的wx.request()方法,可以发起GET数据请求:

    在wxml中给按钮绑定一个单击事件:

    <button type="primary" bindtap="Get_request">发起GET请求button>
    
    • 1

    通过wx.request方法请求数据。

     Get_request(){
         wx.request({
           url: 'https://suliang.blog.csdn.net', //请求地址
           method:"GET", //请求方式 
           data:{         //发送到服务器的数据
               name:'suliang',
               age:21
           },
           success:(result)=>{    //请求成功后的回调函数
                 console.log(result);
           }
    
         })
     }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14

    点击按钮,get请求成功。
    在这里插入图片描述

    同理:发起POST请求也是如此,只需将method的值修改为PSOT即可。

    在页面刚加载时请求数据

    在很多情况下,我们需要在页面刚加载的时候,自动请求一些初始化的数据。此时需要在页面的onLoad事件中调用获取数据的函数。
    在页面的.js文件中的监听页面加载设置即可。

       /**
         * 生命周期函数--监听页面加载
         */
     onLoad(options) {
         this.Get_request();
     },
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    跳过request合法域名校验

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

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

    注意:跳过request合法域名校验。仅限在开发和调试阶段使用,正式上线和发布时,仍然需要配置合法的request域名。

    在这里插入图片描述

    关于跨域和ajax请求

    跨域:指的是浏览器不能执行其他网站的脚本

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

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

  • 相关阅读:
    Asp .Net Core 系列:集成 Ocelot+Nacos+Swagger+Cors实现网关、服务注册、服务发现
    社区分享|腾讯海外游戏基于JumpServer构建游戏安全运营能力
    java毕业设计爱心互助及物品回收管理系统Mybatis+系统+数据库+调试部署
    16. 线性代数 - 矩阵的性质
    HTTPS基础原理和配置 - 1
    Tomcat 安装与配置
    Android:关于定时任务重启之后的问题研究
    Java之多线程
    设计模式学习笔记 - 面向对象 - 7.为什么要多用组合少用继承?如何决定该用组合还是继承?
    科技云报道:云安全的新战场上,如何打破“云威胁”的阴霾?
  • 原文地址:https://blog.csdn.net/weixin_46277553/article/details/126050764