我是PHP代码的新手,我想知道我是否正确编码。我需要从我的Android应用程序发送数据到我的服务器。我现在用php做它。 (这是正确的方法吗?如果没有,我应该使用什么?)
因此,如果我将它们传递给我的服务器,就像这样:
www.myserverexample.com/myPhpScript.php?variable1=text1&variable2=text2
似乎这不是正确的方法。如果我需要向服务器发送20个变量怎么办呢,这仍然是好的,似乎这不是真正的安全。
(所有关于正确变量的验证都在php脚本中完成,然后发送到我的数据库)
答案 0 :(得分:4)
使用HTTPS。现在至少有3个组织可以从中获得免费证书。使用HTTPS时,GET和POST变量都受到保护。
您打算使用共享托管还是专用托管?您将以何种方式保护您的Web服务器日志?这些变量中的值有多敏感或个人化?在我们确定GET是否安全之前,我们需要知道这一点,因为记录了整个URL。
值是否会更改服务器上的任何内容?喜欢更新数据库或文件?如果是这样的话,你应该使用POST。
如果您控制自己的Web服务器日志(即非共享主机)并且值不是特别敏感,则GET很好。否则使用POST。
答案 1 :(得分:-1)
您正在使用GET方法。 这有效但不安全,而不是您应该如何发送任何敏感数据 如果您需要安全地将数据发送到服务器 你需要使用SSL上的POST方法
答案 2 :(得分:-1)
在这种情况下,我建议您使用POST请求将数据发送到php脚本。使用POST,您可以在HTTP内容体中发送多少数据没有限制(我认为GET请求中查询字符串的最大长度是2KB),并且您的变量更加隐藏,因为它们没有暴露在查询字符串中。
如果您切换到使用POST,则需要在php脚本中将所有$_GET
变量更改为$_POST
,并以某种方式将content-type
请求标头设置为{{1在你的应用程序中。
请注意,如果您想防止MITM攻击并提高整体安全性,请使用SSL。
答案 3 :(得分:-2)
在客户端(android-app)和服务器(php web应用程序)之间发送数据可以通过多种方式完成。
最常见的方式是https协议,但在我们深入研究之前,您应该熟悉 HTTP 方法!
您现在使用的是 GET 通过网址发送数据的方法,并且每个人都可以看到它显然是不安全!
您最常使用 POST 方法解决此问题!
然后考虑使用 HTTPS 认证,因为它会加密您的数据,因此无法被盗