0

我在 PHP 中有一个文件从 Android 应用程序接收 POST,它可以正常工作,但如果从浏览器加载它也可以正常工作。阻止这种情况发生的最正确和最有效的方法是什么?

4

3 回答 3

3

尝试在请求中测试用户代理$_SERVER["HTTP_USER_AGENT"]。使用 PHP,您可以使用 get_browser() 来获取用户代理的更多信息。

请注意,任何客户端都可以发送虚假的用户代理,因此此信息是很好的提示,但作为任何用户输入,它不能完全被信任。

如果您拥有 Android 应用程序,我建议您通过 HTTPS 将在 android 应用程序上生成的安全令牌发送到您的 PHP 应用程序,以便对其进行验证。

于 2013-10-26T15:27:17.230 回答
1

在发出 HTTP 请求时添加标头。

例如应用程序类型

 httppost.setHeader("Application-Type", "ANDROID");

这将区分您的呼叫,服务器可能会知道呼叫是否来自具有此标头的移动设备,而浏览器没有。

于 2013-10-26T15:19:07.857 回答
0

看看来自 android 的带有 phpinfo() 的页面

您可以检查浏览器和操作系统,在此基础上您可以选择要执行的操作

于 2013-10-26T15:15:31.097 回答