golang использует apns2, наберите tcp: lookup api.development.push.apple.com на xxx: прочитайте udp xxx-> xxx: тайм-аут ввода-вывода - PullRequest
0 голосов
/ 08 июля 2019

Я вызываю apns2 в golang, который иногда возвращает тайм-аут, и процесс закрывается.Я использую go версию go1.12.5 darwin / amd64.Я рассмотрел проблемы apns2 # 24 и # 21, думаю, они решили их, но проблемы все равно будут.

Это мой код

func ApplePushNotificationService(deviceToken string, parameters string) {
    cert, err := certificate.FromP12File("./hookupAPNS.p12", "******")
    if err != nil {
        log.Fatal("Cert Error:", err)
    }
    notification := &apns2.Notification{}
    notification.DeviceToken = deviceToken
    notification.Topic = "com.preferme.hookup"
    payload := payload.NewPayload().Alert(parameters).AlertBody(parameters).Badge(1).Sound("sound.wav").Custom("key", "val")
    notification.Payload = payload
    client := apns2.NewClient(cert).Production()
    res, err := client.Push(notification)
    if err != nil {
        log.Fatal("push Error:", err)
    }
    fmt.Printf("%v %v %v\n", res.StatusCode, res.ApnsID, res.Reason)
}

Это последний журналпроцесс остановлен.

push Error:Post https://api.development.push.apple.com/3/device/4dc8efa9c46b0206c2e6e0dda6a1314c457704f897747ae1f7dffe4ef31a443b: dial tcp: lookup api.development.push.apple.com on 10.143.22.116:53: read udp 10.116.213.185:38055->10.143.22.116:53: i/o timeout
...