APNS确定提供者令牌年龄的方式是通过发送一个HTTP/2请求来检索令牌,如果令牌已过期,则请求将返回类似于410状态码的响应。
以下是一个示例,展示了如何发送一个HTTP/2请求,并处理类似于410状态码的响应:
let url = URL(string: "https://api.push.apple.com/3/device/DEVICE-TOKEN")!
var request = URLRequest(url: url)
request.httpMethod = "GET"
request.setValue("Bearer AUTHORIZATION_TOKEN", forHTTPHeaderField: "authorization")
let session = URLSession(configuration: .default)
let task = session.dataTask(with: request) { (data, response, error) in
if let response = response as? HTTPURLResponse {
if response.statusCode == 410 {
// Token is expired
} else {
// Token is still valid
}
}
}
task.resume()