Xniffer 3.0.0

Xniffer 3.0.0

测试已测试
语言语言 SwiftSwift
许可证 MIT
发布最后发布2017年12月
SwiftSwift 版本4.0
SPM支持 SPM

Mauricio CousillasEnrique Galindo 维护。



Xniffer 3.0.0

Xmartlabs SRL 提供。

介绍

Xniffer 是一个非侵入式的框架,用于在您的应用和任何外部服务之间截获发送的请求及其响应,用于调试和性能监控。

受 Response detective 启发。

配置

为了正常运行,Xniffer 需要被添加为 URLSession 和互联网之间的中间件。
在初始配置之后,将在 UI 之上显示一个窗口,该窗口将显示所有当前请求及其延迟。

基本用法

let configuration = URLSessionConfiguration.default
// The setup method adds the Xniffer's custom protocol as a middleware.
Xniffer.setup(with: configuration)
let session = URLSession(configuration: configuration)

现在我们可以开始使用此会话实例来发送请求了!

使用 Alamofire

如果您正在使用 Alamofire,可以使用以下方式初始化您的 Manager 来开始使用 Xniffer

let configuration = URLSessionConfiguration.default
configuration.httpAdditionalHeaders = SessionManager.defaultHTTPHeaders
Xniffer.setup(with: configuration)
let sessionManager = Alamofire.SessionManager(configuration: configuration)

用户界面模式

目前 Xniffer 支持三个模式:.window.console.custom。默认值为 .window,但可以在 Xniffer.setup(configuration: URLSessionConfiguration, mode: XnifferUI = .window) 中轻松更改。
每个模式都使用不同的 XnifferDelegate 实现。

  • .window : 在状态栏上方显示一个窗口,可以展开以显示已分析了的请求列表。这是默认值。
  • .console : 在 Xcode 控制台上打印结果。
  • .custom : 这是一个接收类型为 () -> () 的闭包,因此您可以使用自己的 XnifferDelegate 实现。

要求

  • iOS 9.0+
  • Xcode 9.0+

参与

  • 如果您 想要做出贡献,请随时 提交拉取请求
  • 如果您 有功能请求,请 打开一个问题
  • 如果您 发现了一个错误需要帮助,请在提交问题之前,检查旧的 常见问题解答StackOverflow 上的线程(标记为 'Xniffer')。

在做出贡献之前,请查看 CONTRIBUTING 文件以获取更多信息。

如果您在您的应用程序中使用了 Xniffer,我们很乐意听到您的反馈!在 twitter 上联系我们。

示例

按照以下 3 个步骤运行示例项目:克隆 Xniffer 仓库、打开 Xniffer 工作区和运行 示例 项目。

作者

变更日志

这可以在 CHANGELOG.md 文件中找到。