微信小程序(三):网络请求

 更新时间:2017年01月13日 10:10:52   作者:阿东_Luck  
本篇文章主要介绍了微信小程序(三):网络请求。小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧

前文讲配置的时候我们说过,开发小程序时可以选择有 APPID 和 无 APPID ,两种方式。

1. 当有APPID的情况下,进行网络通信,只能和指定的域名进行通信。如果没有进行配置,编译时会报如下错误:

enter image description here

配置方法:

设置域名

需要在微信公众平台的小程序中设置域名。在微信小程序的设置界面可以看到设置选项:

enter image description here

选择开发设置:

enter image description here

可以看到服务器设置:

enter image description here

这里我们可以设置我们这个APPID可以访问的域名,每种最多可以设置两个。(注意,此处只能使用 https 的域名,这个申请过程需要花费一定的时间)

2. 当没有APPID的情况下,就方便多了,可以随意进行网络请求,不限制域名,但是,这种情况下不能进行发布,也不能在手机上预览。如果想正式做小程序开发,还是需要有一个https的域名,但是学习的情况下http的就足够了。

在小程序中网络请求大致分为四种类型。

  •  普通HTTPS请求(wx.request)
  •  上传文件(wx.uploadFile)
  •  下载文件(wx.downloadFile)
  •  WebSocket通信(wx.connectSocket)

这里主要讲 wx.request:

使用wx.request可以发起一个http请求,一个微信小程序被限制为同时只有5个网络请求。注意是同时。

    wx.request({
      url: 'http://192.168.1.137:80/app/guanggao',
      method: 'POST',
      data: {
         type: "1"
      },
      header: {
        'Accept': 'application/json'
      },
      success: function (res) {
        that.setData({
          images: res.data.data.guanggao
        })
      }
      fail:function(err){
        console.log(err)
      }
    })

上面的代码会发送一个http get请求,其中的参数也比较容易理解。

  •  url 服务器的url地址
  •  data 请求的参数可以采用String data:”xxx=xxx&xxx=xxx”的形式或者Object data:{“userId”:1}的形式
  •  header 设置请求的header
  •  method http的方法,默认为GET请求
  •  success 接口成功的回调
  •  fail 接口失败的回调

另外还有一个参数没有在代码里: 

  •  complete 调用接口结束之后的回调,无论成功或者失败该接口都会被调用

超时的设置

在前文中已经提到了在app.js中设置networkTimeout可以设置四种类型网络访问的超时时间:

"networkTimeout":{
  "request": 10000,
  "connectSocket": 10000,
  "uploadFile": 10000,
  "downloadFile": 10000
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • VSCode多行注释插件KoroFileHeader使用示例

    VSCode多行注释插件KoroFileHeader使用示例

    这篇文章主要为大家介绍了VSCode多行注释插件KoroFileHeader使用示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-03-03
  • TypeScript与JavaScript对比及打包工具比较

    TypeScript与JavaScript对比及打包工具比较

    这篇文章主要为大家介绍了TypeScript与JavaScript对比及打包工具比较,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-03-03
  • Hooks封装与使用示例详解

    Hooks封装与使用示例详解

    这篇文章主要为大家介绍了Hooks封装与使用示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-01-01
  • JS ES新特性 模板字符串

    JS ES新特性 模板字符串

    这篇文章主要介绍了JS ES新特性模板字符串,模板字符串即Template String是增强版的字符串,使用反引号(```)来代替谱通字符串中的用双引号和单引号,更多相关介绍,需要的朋友可以参考下面文章的详细内容
    2021-12-12
  • 利用前端HTML+CSS+JS开发简单的TODOLIST功能(记事本)

    利用前端HTML+CSS+JS开发简单的TODOLIST功能(记事本)

    这篇文章主要介绍了用HTML+CSS+JS做出简单的TODOLIST(记事本)项目,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2021-04-04
  • JS前端架构pnpm构建Monorepo方式管理demo

    JS前端架构pnpm构建Monorepo方式管理demo

    这篇文章主要为大家介绍了JS前端架构pnpm构建Monorepo方式的管理demo,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-07-07
  • 基于迁移学习的JS目标检测器构建过程详解

    基于迁移学习的JS目标检测器构建过程详解

    这篇文章主要为大家介绍了基于迁移学习的JS目标检测器构建过程详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-03-03
  • open 打开浏览器的过程原理示例解析

    open 打开浏览器的过程原理示例解析

    这篇文章主要为大家介绍了open 打开浏览器的过程原理示例解析,
    有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-12-12
  • Google 地图API资料整理及详细介绍

    Google 地图API资料整理及详细介绍

    本文主要介绍Google 地图API资料,这里整理了Google地图API的基本知识,并详解每个函数的意思,有需要的小伙伴可以参考下
    2016-08-08
  • JavaScript parseInt0.0000005打印5原理解析

    JavaScript parseInt0.0000005打印5原理解析

    这篇文章主要为大家介绍了JavaScript parseInt0.0000005打印5原理解析,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-07-07

最新评论