网络请求

get

发送get请求

参数

参数类型必需默认值说明
urlString网络请求地址,如果项目中配置了apiPrefix并且setting中的apiPrefix为true,则添加配置的前缀
dataObject要传的参数,会拼接在请求的url中
headerObject设置http请求的header
resDataTypeStringjson设置response的数据类型, 为json时, 会尝试对返回值进行JSON.parse(), 若不希望parse, 则传入'text'即可
settingObject{jsonp: false(仅web端有效), apiPrefix: Boolean(根据传入url决定), credentials: 'include'(仅web端有效)}自定义了设置,apiPrefix为是否添加chameleon.config.js中设置的apiPrefix (以http://或https://或//开头的url默认不会拼接, 其他情况均会自动拼接); jsonp 为 true 时会发起一个 jsonp 请求; credentials可选值'omit'/'same-origin'/'include', 对应fetch的credentials
domainString网络请求的域名前缀(chameleon-api@0.3.0-alpha.4 开始支持)具体参见api多域名mock

返回值

返回promise,对应的请求成功和失败回调

举例

  1. cml.get({
  2. url: 'https://cml.com/api/user/1'
  3. }).then(res => {
  4. cml.showToast({
  5. message: JSON.stringify(res),
  6. duration: 2000
  7. })
  8. }, err => {
  9. cml.showToast({
  10. message: JSON.stringify(err),
  11. duration: 2000
  12. })
  13. })

post

发送post请求

参数

参数类型必需默认值说明
urlString网络请求地址,如果项目中配置了apiPrefix并且setting中的apiPrefix为true,则添加配置的前缀
dataObject要传的参数,会拼接在请求的url中
headerObject设置http请求的header
contentTypeStringform取值:form或json,决定body中data的格式,对应header中content-type为application/x-www-form-urlencoded或application/json
resDataTypeStringjson设置response的数据类型, 为json时, 会尝试对返回值进行JSON.parse(), 若不希望parse, 则传入'text'即可
settingObject{jsonp: false(仅web端有效), apiPrefix: Boolean(根据传入url决定), credentials: 'include'(仅web端有效)}自定义了设置,apiPrefix为是否添加chameleon.config.js中设置的apiPrefix (以http://或https://或//开头的url默认不会拼接, 其他情况均会自动拼接); jsonp 为 true 时会发起一个 jsonp 请求; credentials可选值'omit'/'same-origin'/'include', 对应fetch的credentials

返回值

返回promise,对应的请求成功和失败回调

举例

  1. cml.post({
  2. url: 'https://cml.com/api/user/update',
  3. data: {
  4. a: 1
  5. }
  6. }).then(res => {
  7. cml.showToast({
  8. message: JSON.stringify(res),
  9. duration: 2000
  10. })
  11. }, err => {
  12. cml.showToast({
  13. message: JSON.stringify(err),
  14. duration: 2000
  15. })
  16. })

request

发送request请求

参数

参数类型必需默认值说明
urlString网络请求地址,如果项目中配置了apiPrefix并且setting中的apiPrefix为true,则添加配置的前缀
dataObject要传的参数,会拼接在请求的url中
methodObject若cml.get()/cml.post()无法满足需求,如需使用DELETE/PUT时,可调用此方法
headerObject设置http请求的header
contentTypeStringform取值:form或json,决定body中data的格式,对应header中content-type为application/x-www-form-urlencoded或application/json
resDataTypeStringjson设置response的数据类型, 为json时, 会尝试对返回值进行JSON.parse(), 若不希望parse, 则传入'text'即可
settingObject{jsonp: false(仅web端有效), apiPrefix: Boolean(根据传入url决定), credentials: 'include'(仅web端有效)}自定义了设置,apiPrefix为是否添加chameleon.config.js中设置的apiPrefix (以http://或https://或//开头的url默认不会拼接, 其他情况均会自动拼接); jsonp 为 true 时会发起一个 jsonp 请求; credentials可选值'omit'/'same-origin'/'include', 对应fetch的credentials

返回值

返回promise,对应的请求成功和失败回调

举例

  1. cml.request({
  2. url: 'https://cml.com/api/user/1',
  3. data: {
  4. a: 1
  5. },
  6. method: 'PUT'
  7. }).then(res => {
  8. cml.showToast({
  9. message: JSON.stringify(res),
  10. duration: 2000
  11. })
  12. }, err => {
  13. cml.showToast({
  14. message: JSON.stringify(err),
  15. duration: 2000
  16. })
  17. })