我希望对另一台服务器上的另一个脚本发出一个简单的GET请求.我该怎么做呢?
在一种情况下,我只需要请求外部脚本而无需任何输出.
make_request('http://www.externalsite.com/script1.php?variable=45'); //example usage
Run Code Online (Sandbox Code Playgroud)
在第二种情况下,我需要获取文本输出.
$output = make_request('http://www.externalsite.com/script2.php?variable=45');
echo $output; //string output
Run Code Online (Sandbox Code Playgroud)
说实话,我不想乱用CURL,因为这不是CURL的工作.我也不想使用http_get,因为我没有PECL扩展.
fsockopen会工作吗?如果是这样,如何在不读取文件内容的情况下执行此操作?没有其他办法吗?
谢谢大家
我应该补充一下,在第一种情况下,我不想等待脚本返回任何内容.据我所知,file_get_contents()会等待页面完全加载等?
我知道我可以在任何特定实例上设置选项,但是我真正想要的是设置一些php.ini或类似的东西来处理所有项目和所有实例.
有谁知道我这样做的方法?
编辑:我特别感兴趣的是一个允许证书在不同服务器上的不同位置的解决方案.
我正在开发一台Windows机器,它需要这个,但部署到Linux服务器,它不仅不需要它,甚至没有指示路径.
我知道我可以使用条件来检查代码运行的位置,但更愿意让它开箱即用.在我看来,对于curl和PHP而言,这实际上是一个问题,而不是我的代码,因此它的设置属于那里.
我们有一个内联网网站,我们称之为https://www.myintranetsite.com。请注意,我无法访问其源代码。
我想在 IFrame 的另一个网页中使用它,所以我正在创建一个非常基本的 HTML 页面,例如:
<html><body>
<div>
<iframe id="myIframe" width="100%" height="1200px" src="https://www.myintranetsite.com/"></iframe>
</div>
</body></html>
Run Code Online (Sandbox Code Playgroud)
当我使用 Microsoft Edge 打开 HTML 页面时,它可以工作,但是 Google Chrome 无法工作并显示以下错误:
当我在浏览器中执行 F12 时,我在控制台中看到的错误消息如下:
Uncaught ReferenceError: $ is not defined at login? isajax=true:19
据我了解,在 myintranetsite.com 中使用了 JQuery,Chrome 出于某种原因没有加载它,可能与安全有关...... Chrome 版本: 81.0.4044.122(64 位)
我怎样才能克服这个问题?我试过这些但没有帮助:
我已经检查过这个,但它也没有帮助:jQuery/iframe not working in Chrome
任何帮助或建议将不胜感激。
我想写一个函数来检索网页的内容,所以它的工作方式如下:
$url = "example.com";
$pageContent = RetrievePageContent($url);
Run Code Online (Sandbox Code Playgroud)
最简单的方法是什么?
在此先感谢您的帮助!