数据请求

接口声明

{"name": "system.fetch"}

导入模块

import fetch from '@system.fetch'const fetch = require('@system.fetch')

接口定义

fetch.fetch(OBJECT)

获取网络数据

参数:

参数名 类型 必填 说明
url String 资源url
data String/Object 请求的参数,可以是字符串,或者是json对象。参考 data与Content-Type关系 部分
header Object 请求的header,会将其所有属性设置到请求的header部分。useragent设置无效。示例:{"Accept-Encoding": "gzip, deflate","Accept-Language": "zh-CN,en-US;q=0.8,en;q=0.6"}
method String 默认为 GET,可以是:OPTIONS, GET, HEAD, POST, PUT, DELETE, TRACE, CONNECT
success Function 成功返回的回调函数
fail Function 失败的回调函数,可能会因为权限失败
complete Function 结束的回调函数(调用成功、失败都会执行)

data与Content-Type关系

data Content-Type 说明
String 不设置 Content-Type默认为text/plain,data值作为请求的body
String 任意type data值作为请求的body
Object 不设置 Content-Type默认为application/x-www-form-urlencoded,data按照url规则进行encode拼接作为请求的body
Object application/x-www-form-urlencoded data按照url规则进行encode拼接作为请求的body
Object application/x-www-form-urlencoded之外的任意type 1010以前的版本会调用失败;从1010版本开始,如果manifest中申明的minPlatformVersion>=1010,会将data转为字符串作为请求的body
success返回值:
参数名 类型 说明
code Integer 服务器状态code
data String 如果服务器返回的header中type是text/*或application/json、application/javascript、application/xml,值是文本内容,否则是存储的临时文件的uri临时文件如果是图片或者视频内容,可以将图片设置到image或video控件上显示
headers Object 服务器response的所有header

示例:

fetch.fetch({
  url: 'http://www.example.com',
  success: function (data) {
    console.log(`title: ${JSON.parse(data.data).title}`)
  },
  fail: function (data, code) {
    console.log(`handling fail, code = ${code}`)
  }
})

条匹配 "" 的结果

    没有搜索到与 "" 相关的内容