zoukankan      html  css  js  c++  java
  • 微信小程序 API 网络(ajax)

      网络 API 类似于 ajax 向服务器请求网络地址,唯一不同的是这个请求有很多的规则,且必须向服务器上请求,不能在本地请求

      网络

        发送请求:

          wx.request()  发起https网络请求  参数:对象

          对象的属性:

            url:类型  字符串  开发者服务器的接口地址(且拥有诸多的限制,必须是https的网络请求)

            如图:

            

            如果我们没有合法的域名,也能进行测试:

              我们需要对调试基础库的选项进行打勾就好了

            data:类型  字符串/对象/数组/缓存  请求的参数

            header:类型  对象  请求设置的 header  (得到数据的返回值,默认是 json 格式,我们都知道在服务器请求到的数据都是字符串)   

            method:类型  字符串  请求的方式:

              属性值:options / get / head / post / put / delete / tract / connect  这是请求的方式

            dataType:类型  字符串  返回的数据格式

              属性值:json  会对返回的数据为 json,如果不是,会对返回的数据进行一次 JSON.parse()

                  其他  不对返回的内容进行JSON.parse()

            responseType:类型  字符串  响应的数据类型

              属性值:text  响应的数据为 文本

                  arraybuffer  响应的数据为 ArrayBuffer

             success:类型  函数  接口返回成功的回调函数  对象对象上拥有3个属性

              属性值:

                data:类型  字符串/对象/数组/缓存  开发者服务器返回的数据

                statusCode:类型  数字  开发者服务器返回的 http 码

                header:类型  对象  开发者服务器返回的 HTTP Response Header

        RequestTask  网络请求的任务对象(拥有属性和方法)

          RequestTask.abort()  中断请求的任务  直接执行

          RequestTask.onHeadersReceived()  监听 HTTP Response Header 事件,会比请求完成事件更早  参数:回调函数 (事件对象的 header 属性)返回值:开发者服务器返回 HTTP Response Header

          RequestTask.offHeadersReceived()  取消监听 HTTP Response Header 事件  参数:回调函数

        下载:

          wx.downloadFile()  下载文件资源到本地,客户端直接发起一个 HTTPS GET 请求,返回文件的本地临时路径,单次下载允许的最大文件为 50 MB   参数:对象

                  注意:请在服务端响应的 header 中指定合理的 Content-Type 字段,以保证客户端正确处理文件类型

          对象的属性:

            url:类型  字符串  下载资源的url

            header:类型  object  HTTP 请求的 Header,Header 中不能设置 Referer

            filePath:类型  字符串  指定文件下载后的储存路径

            success:类型  函数  接口调用成功后的回调函数  

              事件对象上的属性:

                tempFilePath:类型  字符串  临时文件的路径,没传入 filePath 指定文件储存路径时会返回,下载后的文件储存到一个临时文件

                filePath:类型  字符串  用户文件路径,传入 filePath 时会返回,跟传入的 filePath 一致

                statusCode:类型  数字  开发者服务器返回的 HTTP 状态码

        DownloadTask:一个可以监听下载进度变化事件,以及取消下载任务的对象 (拥有属性和方法)

          Download.abort()  中断下载任务

          DownloadTask.onProgressUpdate()  监听下载进度变化事件  参数:回调函数

            事件对象的属性:

              progress:下载进度百分比

              res.totalBytesWritten:已经下载的数据长度

              res.totalBytesExpectedToWrite:预期需要下载的数据总长度

        DownloadTask.offProquressUpdate()  取消监听下载进度变化事件  直接使用

        DownloadTask.onHeadersReceived()  监听 HTTP Response Header 事件,会比请求完成事件更早  参数:回调函数

        DownloadTask.offHeadersReceived()  取消监听 HTTP Response Header 事件

        上传:

          wx.uploadFile()  将本地资源上传到服务器,客户端发起一个 HTTPS POST 请求,其中 content-type 为 multipart/form-data。  参数:对象

          对象的属性:

            url:类型  字符串  开发者服务器地址

            filePath:类型  字符串  要上传的文件资源路径

            name:类型  字符串  文件对应的 key ,开发者可以通过 key 获取文件的二进制内容

            header:类型  对象  HTTP 请求 Header,Header 中不能设置 Referer

            formData:类型  对象  HTTP 请求中其他额外的 form data

            success:类型  函数  接口调用成功的回调函数  

              事件对对象上的属性

                data:类型  字符串  开发者服务器返回的数据

                statusCode:类型  数字  开发者服务器返回的 HTTP 状态码

          uploadTask:一个可以监听上传进度变化事件,以及取消上传任务的对象(拥有属性和方法)

          uploadTask.abort():中断上传任务

          UploadTask.onProgressUpdate():监听上传进度变化事件

            事件对象的属性

              progress:上传进度百分比

              totalBytesSent:已经上传的数据长度

              totalBytesExpectedToSend:预期需要上传的数据总长度

          UploadTask.offProgressUpdate():取消监听上传进度变化事件

          UploadTask.onHeadersReceived():监听 HTTP Response Header 事件,会比请求完成事件更早

          UploadTask.offHeadersReceived():取消监听 HTTP Response Header 事件

      WebSocket

        wx.sendSocketMessage():通过 WebSocket 连接发送数据,需要线 wx.connectSocker,并在 wx.onSocketOpen 回调之后才能发送   参数:对象

          对象的属性:

            data:类型  字符串/数组/缓存  需要发送的内容

        wx.onSocketOpen():监听 WebSocket 连接打开事件  参数:回调函数

          事件对象的属性:

            header:类型  对象  连接成功的 HTTP 响应 Header

        wx.onSocketMessage():监听 WebSocket 接受到服务器的消息事件  参数:回调函数

          事件对象:

            data:类型  对象/数组/缓冲  服务器返回的消息

        wx.onSocketError():监听 WebSocket 错误事件

        wx.connectSocket():创建一个 WebSocket 连接  参数:对象

          对象的属性:

            url:类型  字符串  (必填)  开发者服务器 wss 接口地址

            header:类型  对象  HTTP 请求 Header (注意:这个 Header 中不能设置 Referer)

            protocols:类型  数组  子协议数组

            tcpNoDelay:类型  布尔  建立 TCP 连接的时候 TCP_NODELAY 设置

        wx.closeSocket():关闭 WebSocket 连接  参数:对象

          对象的属性:

            code:类型  数字  一个数字表示关闭连接的状态号,表示被关闭的原因

            reason:类型  字符串  一个可读的字符串,表示被关闭的原因

        

        SocketTask:WebSocket 任务,可通过 wx.connectSocket() 接口创建返回的对象(拥有属性和方法)

        SocketTask.send():通过 WebSocket 连接发送数据

        SocketTask.close():关闭 WebSocket 连接

        SocketTask.onOpen():监听 WebSocket 连接打开事件

        SocketTask.onClose():监听 WebSocket 连接关闭事件

        SocketTask.onError():监听 WebSocket 错误事件

        SocketTask.onMessage():监听 WebSocket 接受到服务器的消息事件

      mDNS

        wx.stopLocalServiceDiscovery()  停止搜索 mDNS 服务  参数:对象

          对象的属性:

            success:类型  成功  参数:回调函数

            事件对象上的属性:

              errMsg:类型  字符串  

                属性值:task not found  在当前没有处在搜索服务中调用 stopLocalServiceDiscovery

        wx.startLocalServiceDiscovery()  开始搜索局域网下的 mDNS 服务,搜索的结果会通过 wx.onLocalService 事件返回  参数:对象

          对象的属性:

            serviceType:类型  字符串  要搜索的服务类型

            success:事件对象的属性:

              errMsg:类型  字符串  错误信息

                属性值:invalid param  serviceType 为空

                    scan task already exist  当前 startLocalServiceDiscovery() 发起搜索未停止的情况下,在次调用 startLocalServiceDiscovery()

        wx.onLocalServiceResolveFail()  监听 mDNS 服务解析失败事件  参数:回调函数

          事件对象上的属性:serviceType:类型  字符串  服务的类型  

                   serviceName:类型  字符串  服务的名字

        wx.onLocalServiceLost()  监听 mDNS 服务离开事件  参数:回调函数

          事件对象上的属性:serviceType:类型  字符串  服务的类型

                   serviceName:类型  字符串  服务的名字

        wx.onLocalServiceFound()  监听 mDNS 服务发现的事件  参数:回调函数

          事件对象上的属性:serviceType:类型  字符串  服务的类型

                   serviceName:类型  字符串  服务的名字

                   ip:类型  字符串  服务器的 ip 地址

                   port:类型  数字  服务器的端口

        wx.onLocalServiceDiscoveryStop()  监听 mDNS 服务停止搜索的事件  参数:回调函数

        wx.offLocalServiceResolveFail()  取消监听 mDNS 服务解析失败的事件  参数:回调函数

        wx.offLocalServiceLost()  取消监听 mDNS 服务离开的事件  参数:回调函数

        wx.offLocalServiceFound()  取消监听 mDNS 服务发现的事件  参数:回调函数

        wx.offLocalServiceDiscoveryStop()  取消监听 mDNS 服务停止搜索的事件  参数:回调函数

      UDP通信

        wx.createUDPSocket()  创建一个 UDP Socket 实例  返回值:一个UDP Socket 的实例对象

        UDPSocket  一个 UDP Socket 的 实例,默认使用 IPv4 协议 

        实例的方法:

          UDPSocker.bind()  绑定一个系统随机分配的可用端口

          UDPSocket.send()  向指定的 IP 和 port 发送消息

          UDPSocket.close()  关闭UDP Socket 实例,相当于销毁。在关闭之后,UDP Socket 实例不能在发送消息,每次调用 UDP Socket.send 将会触发错误事件,并且 message 事件回调函数也不会在执行。在UDP Socket 实例被创建后将被 Native 强引用,保证其不被GC。在UDPSocket.close 后将被解除对其的强引用,让 UDPSocket 实例遵从 GC。

          UDPSocket.onClose()  监听关闭事件  参数:回调函数

          UDPSocket.offClose()  取消监听关闭事件  参数:回调函数

          UDPSocket.onError()  监听错误事件

          UDPSocket.offError()  取消监听错误事件  

          UDPSocket.onListening()  监听开始监听数据包消息的事件

          UDPSocket.offListening()  取消监听开始监听数据包消息的事件

          UDPSocket.onMessage()  监听收到消息的事件

          UDPSocket.offMessage()  取消监听收到消息的事件

  • 相关阅读:
    Android Studio 单刷《第一行代码》系列 05 —— Fragment 基础
    Android Studio 单刷《第一行代码》系列 04 —— Activity 相关
    Android Studio 单刷《第一行代码》系列 03 —— Activity 基础
    Android Studio 单刷《第一行代码》系列 02 —— 日志工具 LogCat
    Android Studio 单刷《第一行代码》系列 01 —— 第一战 HelloWorld
    IDEA 内网手动添加oracle,mysql等数据源,以及server returns invalid timezone错误配置
    eclipse maven设置
    IntelliJ IDE 常用配置
    eclipse maven 常见问题解决方案
    Maven 安装和配置
  • 原文地址:https://www.cnblogs.com/shangjun6/p/10964019.html
Copyright © 2011-2022 走看看