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

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

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


网络与连接
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)
    }
  })
分享
微博
QQ
微信
回复
2024-05-13 13:15:44
相关问题
支付成功没有收到
444浏览 • 1回复 待解决
网络请求创建,持久化问题
186浏览 • 1回复 待解决
网络请求怎么进行SSL证书认证?
1863浏览 • 1回复 待解决
interface如何调用
389浏览 • 1回复 待解决
如何进行系统崩溃监控?
258浏览 • 1回复 待解决
鸿蒙Js如何进行信息存储!
1733浏览 • 1回复 待解决
如何进行页面横竖屏切换
658浏览 • 1回复 待解决
如何实现拍照预览onPreviewFrame
141浏览 • 1回复 待解决
Emitter如何声明函数类型
425浏览 • 1回复 待解决
OpenHarmony idl如何实现异步
3157浏览 • 1回复 待解决
多个Cookie如何进行批量设置
644浏览 • 1回复 待解决
FA卡片如何进行数据交互
842浏览 • 1回复 待解决
$r中的资源如何进行比较
578浏览 • 1回复 待解决
如何实现crash堆栈抓取、crash
488浏览 • 1回复 待解决
如何为 C++ 提供函数?
956浏览 • 1回复 待解决
PolarDB 如何进行数据通信?
1635浏览 • 1回复 待解决
NAPI执行上层时,如何获取env
654浏览 • 1回复 待解决
如何进行不同规格的AES加解密
168浏览 • 1回复 待解决
求大佬告知如何进行des加解密
388浏览 • 1回复 待解决