我对这整个WebSocket和SSL证书都不熟悉。
所以我在Android端创建了自己的WebSocket服务器,网站就是客户端。我能够使用常规WebSocket (ws://)
但不能保证安全的WebSocket (wss://)
,因为它需要SSL证书。
我的问题是如何获得SSL证书?根据我的阅读,SSL证书基于域。我需要它为localhost。我需要它来做这样的地址:
wss://localhost:8080/ws/main
如何获取可与localhost
一起使用的SSL证书。
感谢您的时间!
======================编辑=====================
我这样做的原因: 我的Android应用程序中有一个蓝牙服务,它将从连接的健康蓝牙设备(如体重秤和血压机)获取数据。我已经实现了这部分,我想将这些数据传递给网站。 WebSocket似乎更容易,因为用户将打开我的应用程序,当他们自己的重量时,它会自动填充网站上的重量等级权重。我希望我明白这一点。
要做到这一点,我需要有办法将体重或血压值从Java(Android)传递到WebView中加载的网站。所以我认为WebSocket是最简单的方法。
如果您认为有更简单的方法,请告诉我。
此外,我已经尝试过自签名证书,我收到以下错误:
I/X509Util: Failed to validate the certificate chain, error: java.security.cert.CertPathValidatorException: Trust anchor for certification path not found.
OR
Exception=javax.net.ssl.SSLException: Error occured in delegated task:javax.net.ssl.SSLException: Not trusted server certificate
谢谢!!!
答案 0 :(得分:0)
我们遇到了类似的问题,我们的解决方案是将子域注册到我们的某个域,其A记录为127.0.0.1并获得该域的证书。
我担心这个答案对你来说太迟了,但是对于其他人来说这会有所帮助。