netfox 1.21.0

netfox 1.21.0

测试已测试
语言语言 SwiftSwift
许可证 MIT
发布最新版本2022年3月
SPM支持 SPM

维护者:Christos KasketisNathan JangulaMarsel TzatzoBushel iOS EngineersMyriad iOS DeveloperFelipe F Garcia




netfox 1.21.0

  • 作者:
  • Christos Kasketis

Version CI Status Cocoapods Compatible Carthage Compatible Platform License

Netfox 可以快速查看由您的 iOS 或 OSX 应用程序执行的所有的网络请求。它获取所有的请求 - 当然是您的请求,来自第三方库(例如 AFNetworking、Alamofire 或其他)的请求,UIWebViews 等

对于网络相关问题和错误非常实用和方便

支持 Swift 5 及以上版本 - 同时也支持 Objective-C。

对于 Swift 4 的支持,请使用版本 1.19.0

对于 Swift 3.2 的支持,请使用版本 1.12.1

请随意贡献 :)

概览

安装

SPM (beta, only iOS)

Swift 包管理器是一个用于自动分发 Swift 代码的工具,它集成到 swift 编译器中。

要将 netfox 添加为 Xcode 项目的包依赖项,选择 文件 > 添加包,并将存储库 URL 输入为 https://github.com/kasketis/netfox(始终选择最新版本)

有关更多信息,请参阅此处

纯果粉

纯果粉 为 Cocoa 项目提供依赖项管理器。要在您的 Xcode 项目中使用纯果粉集成 netfox,请在您的 Podfile 中指定它。

use_frameworks!
pod 'netfox'

要仅在某些构建配置中捆绑,请在使用 pod 后指定它们。

use_frameworks!
pod 'netfox', :configurations => ['Debug', 'Test']

卡特尔

卡特尔 是一个去中心化的依赖项管理器,它构建您的依赖项并提供二进制框架。要在您的 Xcode 项目中使用卡特尔集成 netfox,请在您的 Cartfile 中指定它。

github "kasketis/netfox"

手动操作

如果您不想使用依赖项管理器,您可以手动将 netfox 集成到您的项目中。

您可以通过复制项目中的 "netfox" 文件夹来做到这一点(确保您已选择 "创建组" 选项)

此文件夹包含 3 个子文件夹:核心、iOS 和 macOS。

  • 如果您的目标是 iOS,请仅保留核心和 iOS 文件夹(删除 macOS 文件夹)
  • 如果您的目标是 macOS,请仅保留核心和 macOS 文件夹(删除 iOS 文件夹)

开始使用

Swift

// AppDelegate
import netfox
NFX.sharedInstance().start() // in didFinishLaunchingWithOptions:

Objective-C

// AppDelegate
[NFX.sharedInstance start]; // in didFinishLaunchingWithOptions:

就这么简单!

注意:请使用以下代码括起来

#if DEBUG
. . .
#endif

以防止库在你的生产应用中执行。

您可以通过使用-DDEBUG参数来添加DEBUG符号。在项目的“构建设置”中设置它 -> “Swift编译器 - 自定义标志”部分 -> “其他Swift标志”行

使用

只需摇动您的设备,检查出问题所在!再次摇动并返回您的应用!

停止

调用

NFX.sharedInstance().stop()

停止netfox并清除所有保存的数据。如果停止netfox,其视图将不会显示,直到您再次调用start方法。

如果您只想启用/禁用日志记录功能或清除数据,请使用设置视图中提供的按钮。

自定义手势

默认情况下,库会注册摇动动作。如果您希望使用不同的手势打开日志,请在安装后添加以下行

NFX.sharedInstance().setGesture(.custom)

然后您可以使用

NFX.sharedInstance().show()

来显示日志,

NFX.sharedInstance().hide()

来隐藏它们。

防止记录特定网址的日志

使用以下方法来防止记录指定URL的请求。您可以忽略任意多的URL。

NFX.sharedInstance().ignoreURL("the_url")

提示:您可以使用主机URL(例如 "https://www.github.com")来忽略其所有路径

功能

  • 搜索:您可以通过以下方式轻松在请求中搜索
    • 请求 URL:github.com、.gr 或您想要的任何东西
    • 请求方法:GET、POST 等
    • 响应类型:如 JSON、XML、HTML、图像等
  • 共享:您可以通过电子邮件与后端开发人员或能帮忙的人共享您的日志。
    • 简单日志选项仅包括请求/响应头部和小型的请求/响应体(当适用时)
    • 完整日志选项包括请求/响应头部和请求/响应体(作为附件)
  • 过滤:选择您想要查看的响应类型(JSON/XML/HTML/图像/其他)
  • 在应用中启用/禁用日志记录
  • 在应用中清除数据
  • 统计信息:检查平均响应时间、总响应大小等酷炫信息,为您选择的响应类型
  • 信息:检查您的 IP 地址、您的应用版本和构建号以及其他应用内信息
  • 更多功能即将推出.. ;)

集成

Droar:一个模块化、单行安装调试窗口。

其他

  • 如果您在请求日志记录中遇到任何问题,请检查这里。如果您没有得到答案,请打开一个问题
  • 由于请求/响应体的体积很大,该库提供了磁盘存储以减少内存开销

感谢

特别感谢 tbaranesvincedev 对OSX库的贡献!

许可证

所有源代码均基于 MIT 许可证。这意味着您可以使用代码做几乎任何事。如果您能在适当的地方保留署名,我将非常感激。