【发布时间】:2016-04-25 10:09:29
【问题描述】:
类似:Socket vs HTTP based communication for a mobile client/server application
我目前正在开发一个基于 Java 客户端-服务器的程序(打算将它变成一个 Android 应用程序)。我已经成功实现了服务器引擎,并且客户端连接和交换数据很漂亮。我的实现基于我的this 回答。
缺点是,所有通信都是直接通过套接字完成的,根本没有协议。这是公认的、安全的或专业的客户端-服务器通信方式吗?
更进一步,如果我想接受信用卡、PayPal 或 Google 钱包,我的应用程序是否符合他们的安全标准,因为我不使用 SSL?如果我使用自己的安全级别,比如javax.crypto.CipherOutputStream,会怎样?
【问题讨论】:
-
可能会考虑将您的消息包装成容器格式,如protocol buffers 并对其进行加密。
-
@Marged 是的,别笑,但优点是我不必学习新东西......而且我可以完全控制一切,因为我自己实现了所有内容。跨度>
-
@Marged 嗯,很难理解你。请详细说明。
-
@Marged 你为什么不写一个答案?看来你对这个话题有很多话要说。
-
使用常用协议/库的一大优势是它已经在野外和实战中测试过了。无论你多么有能力,实施自己的事情都是有风险的。