我有一个 PHP 文件,它查询我的数据库,然后以 XML 格式将信息返回给我的应用程序。现在,如果我只是转到浏览器中的 URL 并在 URL 中输入正确的参数,信息就会直接显示给我。有没有办法让 PHP 页面只能通过应用程序(iOS 和 Android)访问?我已经搜索过了,我唯一能找到的就是使该页面只能通过包含访问,但我看不出如果该人找出包含该文件的 php 页面,这将如何限制访问。任何建议表示赞赏!
谢谢
您对其施加的几乎所有限制基本上都归结为“在请求中放入只有应用程序才会发送的内容”。
基本方法是“保持 URL 机密”。如果只有应用程序知道它,那么只有应用程序可以向它发出请求。其他任何东西(密码、API 密钥、自定义 HTTP 标头、用户代理嗅探等)都只是围绕同一概念的复杂性。
通过 HTTPS 而不是 HTTP 发出请求将保护机密不被嗅探。
但是,没有什么可以使您免于反编译。
您可以在应用程序内的客户端请求中添加自定义 http 标头,并带有质询代码。您的脚本检测标头并验证质询。如果验证通过,则执行脚本,否则返回 403 Forbidden。
而不是。事实上,每个人都可以在他的浏览器信息中插入虚假数据,你不会发现这是 Windows 95 上的 Microsoft Internet Explorer 还是 Android 手机上的 Chrome。
您可以尝试通过 IP 号码来阻止,但这不是阻止应用程序,而是阻止用户。
我唯一的想法是使用一些用户/密码登录的东西,只有你的应用程序会知道,但它有自己的安全漏洞(比如中间人)。