GoFrame錯(cuò)誤處理常用方法及錯(cuò)誤碼使用示例_第1頁(yè)
GoFrame錯(cuò)誤處理常用方法及錯(cuò)誤碼使用示例_第2頁(yè)
GoFrame錯(cuò)誤處理常用方法及錯(cuò)誤碼使用示例_第3頁(yè)
GoFrame錯(cuò)誤處理常用方法及錯(cuò)誤碼使用示例_第4頁(yè)
GoFrame錯(cuò)誤處理常用方法及錯(cuò)誤碼使用示例_第5頁(yè)
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

第GoFrame錯(cuò)誤處理常用方法及錯(cuò)誤碼使用示例目錄前言錯(cuò)誤創(chuàng)建New/NewfWrap/WrapfNewSkip/NewSkipf錯(cuò)誤碼使用錯(cuò)誤碼相關(guān)方法概覽NewCode/NewCodef示例代碼WrapCode/WrapCodef示例代碼NewCodeSkip/NewCodeSkipf獲取error中的錯(cuò)誤碼接口總結(jié)

前言

這篇文章將為大家介紹:GoFrame錯(cuò)誤處理的常用方法錯(cuò)誤碼的使用。如何自定義錯(cuò)誤對(duì)象、如何忽略部分堆棧信息、如何自定義錯(cuò)誤碼的返回、如何獲取error對(duì)象中的錯(cuò)誤碼。

錯(cuò)誤創(chuàng)建

New/Newf

用于創(chuàng)建一個(gè)自定義錯(cuò)誤信息的error對(duì)象,并包含堆棧信息。

New(textstring)error

Newf(formatstring,args...interface{})error

Wrap/Wrapf

用于包裹其他錯(cuò)誤error對(duì)象,構(gòu)造成多級(jí)的錯(cuò)誤信息,包含堆棧信息。

funcWrap(errerror,textstring)error

funcWrapf(errerror,formatstring,args...interface{})error

NewSkip/NewSkipf

用于創(chuàng)建一個(gè)自定義錯(cuò)誤信息的error對(duì)象,并且忽略部分堆棧信息(按照當(dāng)前調(diào)用方法位置往上忽略)。高級(jí)功能,一般開(kāi)發(fā)者很少用得到。

funcNewSkip(skipint,textstring)error

funcNewSkipf(skipint,formatstring,args...interface{})error

錯(cuò)誤碼使用

錯(cuò)誤碼相關(guān)方法概覽

funcNewCode(codeint,textstring)error

funcNewCodef(codeint,formatstring,args...interface{})error

funcNewCodeSkip(code,skipint,textstring)error

funcNewCodeSkipf(code,skipint,formatstring,args...interface{})error

funcWrapCode(codeint,errerror,textstring)error

funcWrapCodef(codeint,errerror,formatstring,args...interface{})error

NewCode/NewCodef

功能同New/Newf方法,用于創(chuàng)建一個(gè)自定義錯(cuò)誤信息的error對(duì)象,并包含堆棧信息,并增加錯(cuò)誤碼對(duì)象的輸入。

NewCode(codegcode.Code,text...string)error

NewCodef(codegcode.Code,formatstring,args...interface{})error

示例代碼

funcExampleNewCode(){

err:=gerror.NewCode(gcode.New(101,"",nil),"MyError")

fmt.Println(err.Error())//MyError

fmt.Println(gerror.Code(err))//101

funcExampleNewCodef(){

err:=gerror.NewCodef(gcode.New(101,"",nil),"It's%s","MyError")

fmt.Println(err.Error())//It'sMyError

fmt.Println(gerror.Code(err).Code())//101

WrapCode/WrapCodef

功能同Wrap/Wrapf方法,用于包裹其他錯(cuò)誤error對(duì)象,構(gòu)造成多級(jí)的錯(cuò)誤信息,包含堆棧信息,并增加錯(cuò)誤碼參數(shù)的輸入。

WrapCode(codegcode.Code,errerror,text...string)error

WrapCodef(codegcode.Code,errerror,formatstring,args...interface{})error

funcExampleWrapCode(){

err1:=errors.New("permissiondenied")

err2:=gerror.WrapCode(gcode.New(403,"",nil),err1,"CustomError")

fmt.Println(err2.Error())//CustomError:permissiondenied

fmt.Println(gerror.Code(err2).Code())//403

funcExampleWrapCodef(){

err1:=errors.New("permissiondenied")

err2:=gerror.WrapCodef(gcode.New(403,"",nil),err1,"It's%s","CustomError")

fmt.Println(err2.Error())//It'sCustomError:permissiondenied

fmt.Println(gerror.Code(err2).Code())//403

NewCodeSkip/NewCodeSkipf

功能同NewSkip/NewSkipf,用于創(chuàng)建一個(gè)自定義錯(cuò)誤信息的error對(duì)象,并且忽略部分堆棧信息(按照當(dāng)前調(diào)用方法位置往上忽略),并增加錯(cuò)誤參數(shù)輸入。

funcNewCodeSkip(code,skipint,textstring)error

funcNewCodeSkipf(code,skipint,formatstring,args...interface{})error

獲取error中的錯(cuò)誤碼接口

funcCode(errerror)gcode.Code

當(dāng)給定的error參數(shù)不帶有錯(cuò)誤碼信息時(shí),該方法返回預(yù)定義的錯(cuò)誤碼gcode.CodeNil

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論