因?yàn)榭蛻舻囊螅?xiàng)目中使用了OpenAPI來生成swift代碼
剛用的時候還不太會聊浅,給header加token還寫在內(nèi)部的addHeader方法里焊夸,后來才知道在OpenAPIClientAPI類里有一個叫customHeaders的靜態(tài)變量,直接賦值就好
除了這個問題還遇到了錯誤解析的問題
想了各種辦法实抡,只要走了error回調(diào),里面的errorCode 和data我都取不出來吏垮,控制臺里可以打印出來捐腿。客戶又不讓修改生成出來的文件厨内。
最后注意到返回的Error的類型是這樣定義的
public enum ErrorResponse : Error {
case error(Int, Data?, Error)
}
查了一下枚舉里帶括號的用法祈秕,這個用法叫做關(guān)聯(lián)值(Associated Value)
用這種方法就可以取出其中的關(guān)聯(lián)值啦
switch error {
case .error(let errCode, let errData, let err):
//xxxxx
}
還有一種用法效果也一樣
if case let ErrorResponse.error(errCode, errData, err) = error {
//xxxxx
}