一个用于避免使用可能返回 nil 的 URL(string:)
初始化方法的工具,它引入了编译时的 URL 有效性检查。请注意,这并不会检查网站的可用性,而是检查 URL 的格式是否正确。
Swift 包管理器是一个用于自动化 Swift 代码分发的工具,并且已集成到 swift
编译器中。
一旦你设置好了你的 Swift 包,添加 SafeURL 作为依赖项就像将其添加到你的 Package.swift
文件的 dependencies
值一样简单。
dependencies: [
.package(url: "https://github.com/baguio/SwiftSafeURL")
],
targets: [
.target(
name: "<MyTargetName>",
dependencies: ["SafeURL"],
plugins: ["SafeURLPlugin"]
),
]
// This will compile
let validUrl = URL(safeString: "https://example.tld")
// This won't
let invalidUrl = URL(safeString: "https://example./tld")
SafeURL 要求它的参数是一个简单的字符串字面量
如果一个文件包含注释 // safeurl:warn
,该文件中无效的 URL
将会被编译,并且会显示一个警告而不是错误。请注意,不建议这样做,因为这仍然会在运行时导致强制停止。