html - 在专用服务器中解析网站的 HTML,而不是在手机中解析
<p><p>我有一个 iOS 应用程序,它从网络(不是我的)下载 HTML 并解析它以获得我需要的数据。问题是,当他们更改网络的 HTML 时,移动应用程序崩溃了,我必须更改代码,而 Apple 停留了一个多星期来接受更新。
这个想法是针对现在我在服务器或网络中的移动应用程序中执行的所有操作,就像必须像一座桥梁一样,即这个服务器/网络将下载 HTML 网络,解析它并将结果发送到移动应用。在这种形式下,我可以立即进行任何更改。</p>
<p>我的问题是我是否可以在不使用需要 servlet 和 Tomcat 服务器的应用程序的情况下做到这一点。我可以用 php 文件或类似的东西来做吗?我不需要保存任何数据,只需要解析一个 HTML 并返回给手机一个指定格式的响应。</p>
<p>谢谢大家。</p>
<p>PD:对不起,我的英语不是我的母语。</p></p>
<br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
<p><p>是的,您可以使用 PHP 做到这一点。但只有当您的网络空间配置正确时,非常便宜且免费的提供商通常会禁用来自您服务器的传出连接。</p>
<hr/>
<p>在 PHP 中,您可以使用 <a href="http://us.php.net/manual/en/function.file-get-contents.php" rel="noreferrer noopener nofollow">just a single line</a> 发出 HTTP GET 请求。 :</p>
<pre><code>$htmlContent = file_get_contents("http://www.example.com/file.html");
</code></pre>
<hr/>
<p>如果您需要获得有关 HTTP GET 请求结果的更多信息(如 header ),您仍然可以使用 <a href="http://us2.php.net/manual/en/function.http-get.php" rel="noreferrer noopener nofollow"><code>http_get()</code></a> 轻松完成此操作。 :</p>
<pre><code>$htmlContent = http_get("http://www.example.com/file.html", array("timeout"=>10), $info);
print_r($info); // <- $info now contains information about header fields
</code></pre>
<hr/>
<p>对于更高级的 GET/POST 请求,您可以安装 <a href="http://us3.php.net/curl" rel="noreferrer noopener nofollow">CURL library</a> :</p>
<pre><code>$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);
</code></pre></p>
<p style="font-size: 20px;">关于html - 在专用服务器中解析网站的 HTML,而不是在手机中解析,我们在Stack Overflow上找到一个类似的问题:
<a href="https://stackoverflow.com/questions/14358192/" rel="noreferrer noopener nofollow" style="color: red;">
https://stackoverflow.com/questions/14358192/
</a>
</p>
页:
[1]