我有一个 iOS 应用程序,它从网络(不是我的)下载 HTML 并解析它以获取我需要的数据。问题是,当他们更改网页的 HTML 时,移动应用程序崩溃了,我必须更改代码,而 Apple 却等待了一个多星期才接受更新。 这个想法是为了现在我在服务器或网络中的移动应用程序中执行的所有操作,就像必须充当桥梁一样,即该服务器/网络将下载 HTML 网络,解析它并将结果发送到移动应用。在这种形式下,我可以立即进行任何更改。
我的问题是我是否可以在不执行需要 servlet 和 Tomcat 服务器的应用程序的情况下完成此操作。我可以用 php 文件或类似的文件来做到这一点吗?我不需要保存任何数据,只需解析 HTML 并向移动设备返回指定格式的响应。
谢谢大家。
PD:抱歉我的英语不好,但这不是我的母语。
最佳答案
是的,您可以使用 PHP 来做到这一点。但只有当您的网络空间配置正确时,非常便宜且免费的提供商通常会禁用来自您服务器的传出连接。
在 PHP 中,您可以使用 just a single line 发出 HTTP GET 请求。 :
$htmlContent = file_get_contents("http://www.example.com/file.html");
如果您需要获取有关 HTTP GET 请求结果的更多信息(例如 header ),您仍然可以使用 http_get()
轻松完成此操作。 :
$htmlContent = http_get("http://www.example.com/file.html", array("timeout"=>10), $info);
print_r($info); // <- $info now contains information about header fields
对于更高级的 GET/POST 请求,您可以安装 CURL library :
$ch = curl_init("http://www.example.com/file.html");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HEADER, 0);
$htmlContent = curl_exec($ch);
curl_close($ch);
关于html - 在专用服务器中解析网站的 HTML,而不是在手机中解析,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14358192/