gpt4 book ai didi

java - 由于 handshake_failure,IOS 推送通知失败

转载 作者:行者123 更新时间:2023-11-30 11:24:22 27 4
gpt4 key购买 nike

iOS 推送通知 由于 handshake_failure 而失败,但它在我的本地机器上运行良好,但在部署到服务器时出现错误。

我正在使用 apns-0.1.5.jar

代码:

    static
{
service = APNS.newService()
.withCert(ClassLoader.class.getResourceAsStream("cert.p12"), "pwd")
.withSandboxDestination()
.build();
}


public static void pushMSG(String msg,String deviceToken)
{

String payload = APNS.newPayload().alertBody(msg).build();

AppLog.info("Message : "+msg+", deviceToken "+deviceToken);

service.push(deviceToken, payload);

}

错误日志

    com.notnoop.exceptions.NetworkIOException: javax.net.ssl.SSLHandshakeException: Received fatal alert: handshake_failure
com.notnoop.apns.internal.Utilities.wrapAndThrowAsRuntimeException(Utilities.java:268)
com.notnoop.apns.internal.ApnsConnectionImpl.sendMessage(ApnsConnectionImpl.java:173)
com.notnoop.apns.internal.ApnsServiceImpl.push(ApnsServiceImpl.java:46)
com.notnoop.apns.internal.AbstractApnsService.push(AbstractApnsService.java:52)
com.notnoop.apns.internal.ApnsServiceImpl.push(ApnsServiceImpl.java:36)
com.gcash.notification.APNSManager.pushMSG(APNSManager.java:35)
com.gcash.TestServlet.doGet(TestServlet.java:58)
javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
root cause

javax.net.ssl.SSLHandshakeException: Received fatal alert: handshake_failure
com.sun.net.ssl.internal.ssl.Alerts.getSSLException(Alerts.java:174)
com.sun.net.ssl.internal.ssl.Alerts.getSSLException(Alerts.java:136)
com.sun.net.ssl.internal.ssl.SSLSocketImpl.recvAlert(SSLSocketImpl.java:1720)
com.sun.net.ssl.internal.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:954)
com.sun.net.ssl.internal.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.java:1138)
com.sun.net.ssl.internal.ssl.SSLSocketImpl.writeRecord(SSLSocketImpl.java:632)

最佳答案

我遇到了同样的问题,我通过以下步骤解决了它。

  1. 检查您的 .p12 文件和 .cer 文件。确保它们彼此对应。
  2. 您是否导出 .p12 文件并直接在您的代码中使用它?如果有,请引用这个answer .“我们应该从您的私钥和从 Apple 下载的证书生成 p12。”

希望它有用。

关于java - 由于 handshake_failure,IOS 推送通知失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20704194/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com