网络请求后如何进行回调?

我想问一下网络请求之后如何进行回调,目前网络请求成功后内部又套了几个方法,全部走完之后怎么进行回调

用什么方法,有没有大佬指点一二


网络与连接
HarmonyOS NEXT
2024-05-11 15:15:42
浏览
收藏 0
回答 1
回答 1
按赞同
/
按时间
FredomKing

回调有两种,一种通过then、catch回调,一种是通过传入回调函数,代码如下,不知是不是你想要的。

call() {
      this.getData().    then(res => {
        console.log(res)
  }).    catch((e: BusinessError) => {
        console.log(e.message)
  })

  this.getDataWithCallback((err, res) => {
        if (err) {
          console.log(err.message)
    }     else {
          console.log(res)
    }
  })
}

getData(): Promise<string> {
  return new Promise((resolve, reject) => {
    // 假设进行网络请求得到响应结果
    let code = 200
    // let code = 500
        if (code == 200) {
      resolve('hello world!')
    }     else {
      let e: BusinessError = {
        code: code,
        name: 'ServerInternalError',
        message: 'Sorry, something went wrong!'
      }
      reject(e)
    }
  })
}

getDataWithCallback(callback: (err: BusinessError | null, res?: string) => void): Promise<string> {
  return new Promise((_resolve, _reject) => {
    // 假设进行网络请求得到响应结果
    // let code = 200
    let code = 500
        if (code == 200) {
      callback(null, 'hello world!')
    }     else {
      let e: BusinessError = {
        code: code,
        name: 'ServerInternalError',
        message: 'Sorry, something went wrong!'
      }
      callback(e)
    }
  })
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.
  • 23.
  • 24.
  • 25.
  • 26.
  • 27.
  • 28.
  • 29.
  • 30.
  • 31.
  • 32.
  • 33.
  • 34.
  • 35.
  • 36.
  • 37.
  • 38.
  • 39.
  • 40.
  • 41.
  • 42.
  • 43.
  • 44.
  • 45.
  • 46.
  • 47.
  • 48.
  • 49.
  • 50.
分享
微博
QQ
微信
回复
2024-05-13 13:15:44
相关问题
HarmonyOS 服务卡片中如何进行网络请求
1075浏览 • 1回复 待解决
HarmonyOS 网络监听多次
863浏览 • 1回复 待解决
HarmonyOS rcp如何进行fetch流式请求
842浏览 • 1回复 待解决
用户端网络质量如何进行监听
900浏览 • 1回复 待解决
支付成功没有收到
2664浏览 • 1回复 待解决
网络请求怎么进行SSL证书认证?
4365浏览 • 1回复 待解决
HarmonyOS网络请求JSON转换问题
2085浏览 • 1回复 待解决
网络请求创建,持久化问题
1554浏览 • 1回复 待解决
网络请求数据的处理
1221浏览 • 1回复 待解决
interface如何调用
1431浏览 • 1回复 待解决