测试已测试 | ✗ |
语言语言 | SwiftSwift |
许可证 | MIT |
发布最后发布 | 2017年12月 |
SwiftSwift 版本 | 4.0 |
SPM支持 SPM | ✗ |
由 Mauricio Cousillas,Enrique Galindo 维护。
由 Xmartlabs SRL 提供。
Xniffer 是一个非侵入式的框架,用于在您的应用和任何外部服务之间截获发送的请求及其响应,用于调试和性能监控。
为了正常运行,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,可以使用以下方式初始化您的 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
实现。在做出贡献之前,请查看 CONTRIBUTING 文件以获取更多信息。
如果您在您的应用程序中使用了 Xniffer,我们很乐意听到您的反馈!在 twitter 上联系我们。
按照以下 3 个步骤运行示例项目:克隆 Xniffer 仓库、打开 Xniffer 工作区和运行 示例 项目。
这可以在 CHANGELOG.md 文件中找到。