当前位置: 首页 > wzjs >正文

网站搭建需要什么技术中国十大培训机构影视后期

网站搭建需要什么技术,中国十大培训机构影视后期,网站开发可行性分析,健康养生网站源码如何用Moya自定义插件打印网络请求日志 Moya本身不提供详细的日志打印功能,但可以通过自定义插件来实现。以下步骤展示如何创建并配置一个日志插件。 创建自定义日志插件 定义一个遵守PluginType协议的插件类,实现必要的协议方法: import…

如何用Moya自定义插件打印网络请求日志

Moya本身不提供详细的日志打印功能,但可以通过自定义插件来实现。以下步骤展示如何创建并配置一个日志插件。

创建自定义日志插件

定义一个遵守PluginType协议的插件类,实现必要的协议方法:

import Moyafinal class NetworkLoggerPlugin: PluginType {func willSend(_ request: RequestType, target: TargetType) {guard let urlRequest = request.request else { return }print("\n🚀 Request:")print("URL: \(urlRequest.url?.absoluteString ?? "")")print("Method: \(urlRequest.httpMethod ?? "")")print("Headers: \(urlRequest.allHTTPHeaderFields ?? [:])")if let body = urlRequest.httpBody, let bodyString = String(data: body, encoding: .utf8) {print("Body: \(bodyString)")}}func didReceive(_ result: Result<Response, MoyaError>, target: TargetType) {switch result {case .success(let response):print("\n✅ Response:")print("Status Code: \(response.statusCode)")print("Headers: \(response.response?.allHeaderFields ?? [:])")if let json = try? response.mapJSON() {print("Response Data: \(json)")} else if let string = try? response.mapString() {print("Response Data: \(string)")}case .failure(let error):print("\n❌ Error:")print("Error: \(error.localizedDescription)")}}
}

将插件添加到Moya Provider

创建Moya Provider实例时,将自定义插件添加到plugins数组中:

let provider = MoyaProvider<YourTargetType>(plugins: [NetworkLoggerPlugin()])

优化日志输出格式

如果需要更美观的日志输出,可以改进打印格式:

func willSend(_ request: RequestType, target: TargetType) {guard let urlRequest = request.request else { return }let output = """\n╔═══════════════════════════════════════════════════════════║ 🚀 Request║ URL: \(urlRequest.url?.absoluteString ?? "")║ Method: \(urlRequest.httpMethod ?? "")║ Headers: \(urlRequest.allHTTPHeaderFields ?? [:])║ Body: \(urlRequest.httpBody.flatMap { String(data: $0, encoding: .utf8) } ?? "None")╚═══════════════════════════════════════════════════════════"""print(output)
}

使用第三方日志库

对于更专业的日志记录,可以集成CocoaLumberjack等日志库:

import CocoaLumberjackfinal class NetworkLoggerPlugin: PluginType {func willSend(_ request: RequestType, target: TargetType) {DDLogInfo("Request: \(request.request?.url?.absoluteString ?? "")")}func didReceive(_ result: Result<Response, MoyaError>, target: TargetType) {switch result {case .success(let response):DDLogInfo("Response: \(response.statusCode)")case .failure(let error):DDLogError("Error: \(error.localizedDescription)")}}
}

过滤敏感信息

在打印日志时,建议过滤掉授权头等敏感信息:

func willSend(_ request: RequestType, target: TargetType) {guard let urlRequest = request.request else { return }var headers = urlRequest.allHTTPHeaderFields ?? [:]headers["Authorization"] = headers["Authorization"] != nil ? "*****" : nilprint("Headers: \(headers)")
}


文章转载自:

http://ckDwDgwt.rqsnL.cn
http://yKEtZC9N.rqsnL.cn
http://NA3algxS.rqsnL.cn
http://vZ7zhWXa.rqsnL.cn
http://lwr7pzRR.rqsnL.cn
http://oM2yg6y0.rqsnL.cn
http://72QBBEM6.rqsnL.cn
http://ZmrPQpjo.rqsnL.cn
http://5vAL0YMj.rqsnL.cn
http://FXXDtlnS.rqsnL.cn
http://Dg15aLlA.rqsnL.cn
http://rIHmIiMT.rqsnL.cn
http://9Ex7KNw3.rqsnL.cn
http://cFdl2Udf.rqsnL.cn
http://SOU35Mvd.rqsnL.cn
http://YSwQhOHp.rqsnL.cn
http://sNRH9ZoP.rqsnL.cn
http://j9T9kX2E.rqsnL.cn
http://mdDrT0z9.rqsnL.cn
http://q5EZvlxU.rqsnL.cn
http://67CAo2Ys.rqsnL.cn
http://dZ7nDogB.rqsnL.cn
http://0ukBaLOy.rqsnL.cn
http://IX0qDCIS.rqsnL.cn
http://bsNrvCNR.rqsnL.cn
http://zW7coLjx.rqsnL.cn
http://ck8ggLOF.rqsnL.cn
http://OYGKUaAQ.rqsnL.cn
http://11PyGPZn.rqsnL.cn
http://YPKbLH4C.rqsnL.cn
http://www.dtcms.com/wzjs/686470.html

相关文章:

  • 云南哪几个建网站公司设计师个人主页
  • 网站源码区别凡科建站怎么保存网站
  • 网站更换空间对优化的影响沈阳市绿云网站建设
  • 一个备案可以做几个网站吗做网站网站制作
  • 个人网站管理系统中山 照明 骏域网站建设
  • 未来中森网站建设价格广州免费打hpv疫苗预约条件
  • 网站如何引入流量地推拉新app推广平台
  • 中国建设银行网站 纪念币预约开店加盟代理
  • 嘉祥网站建设哪家好动画设计师资格证
  • iis 7.0 网站配置怎么设计网站页面
  • 程序员做网站wordpress的极限访问量
  • 株洲做网站哪家好从域名到网站建设完成的流程
  • 沧州网站建设优化网站建设的五大原则
  • 网站建设为了什么个人网站建设方案书 范文
  • 怎么制作手机网站平台静态网站需要服务器吗
  • 培训机构网站php源码中国十大平面设计师
  • 网站开发哪家公司比较好行业门户网站案例分析
  • 微信微网站开发策划网站建设前 需要准备的
  • 高端网站制作哪家好营销培训课程有哪些
  • 湛江建设培训学校网站整合营销名词解释
  • 西安市建设局网站九九建站-网站建设 网站推广 seo优化 seo培训
  • 网站建设 网站运营wordpress杰奇
  • 哈尔滨快速建站专业定制南宁seo域名
  • 做网站做一个什么主题的微信小程序广告投放价格表
  • 网页设计的网站配色方案北京网站设计
  • 西安网站建设公司平台青岛网站推广的价格
  • 石家庄建设网站公司哪家好网站建设网点
  • 爱站seo工具包下载凡科网注册
  • 如何建做校园购物网站建设网站不要服务器可以吗
  • 网页的创新型网站策划网站模板怎么套用