• 微信小程序 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()  取消监听收到消息的事件

  • 相关阅读:
    Eclipse和PyDev搭建完美Python开发环境(Windows篇)
    Java并发编程:线程间协作的两种方式:wait、notify、notifyAll和Condition
    Java并发编程:Timer和TimerTask(转载)
    Java并发编程:并发容器之CopyOnWriteArrayList(转载)
    Java并发编程:阻塞队列
    深入理解Java的接口和抽象类
    Java并发编程:线程池的使用
    Java并发编程:同步容器
    Java并发编程:深入剖析ThreadLocal
    Java并发编程:volatile关键字解析
  • 原文地址:https://www.cnblogs.com/shangjun6/p/10964019.html
Copyright © 2020-2023  润新知