当我打印$data = file_get_contents('php://input')
时,它打印了很多乱七八糟的代码。我想从 php 服务器知道哪个 android 设备已将某个文件上传到服务器。太感谢了!
问问题
761 次
2 回答
0
这不是杂乱的代码,而是关于您不理解的请求的详细信息。
去了解 HTTP 协议是如何工作的,如果你不了解你在使用什么,你就无法解决这个问题。
您只能找出用户代理提供的内容。如果他们没有通过 HTTP 发送带有设备版本号的请求标头,那么不,你不会得到那个。
通常操作系统包含在用户代理字符串中。这可能是您唯一能找到与您正在寻找的东西相近的地方。
于 2012-07-07T04:10:42.333 回答
0
如果您想识别特定用户,您能做的最好的事情(通过您和设备之间的许多系统的设计)就是使用HTTP cookie实现“会话” 。如果请求来自浏览器,则一旦设置了 cookie,来自该个人用户的每个后续请求都将具有相同的 cookie。
我们使用的一般模式是查找现有的 cookie,如果没有(即新用户):创建一个唯一的随机字符串,将其存储在与此“用户”关联的服务器上的某个位置,然后将其发送到用户作为 cookie。
PHP 会话功能可以在这方面为您提供极大的帮助。
请记住,您只能以这种匿名方式跟踪用户。除非您还在发送请求的设备上编写了应用程序,否则您无法从设备获取实际的设备 ID。这很好。
于 2012-07-07T04:30:11.600 回答