如何替换“ file_get_contents”页面的本地网址;

时间:2019-07-08 15:18:18

标签: javascript php html telegram

由于使用iframe加载电报页时受到限制,我使用以下代码:

file_get_contents('https://t.me/s/telegram');

但是电报会加载一些javascript文件,并对我的服务器上不存在的本地文件进行POST查询。例如,Google控制台显示以下内容:

jquery.min.js:4 **POST https://example.com/v/ 404
jquery.min.js:4 POST https://example.com/s/telegram?before=93 404

您可以see it in this picture

我想要捕获这些查询并将它们转换为如下所示的全局URL:

POST https://telegram.org/v/
POST https://telegram.org/s/telegram?before=some_integer

Here is an example URL,应替换为电报的URL。

该脚本应该使用电报的域而不是我的域。不胜感激。

1 个答案:

答案 0 :(得分:0)

我会尝试使用file_get_contents加载页面 然后查找所有试图获取的文件 调用它们并将其保存在本地,然后回显原始网址,现在所有引用都已保存,类似于下面的代码

我的代码可能并不完美,但是我认为这是您应该遵循的方向。查看电报频道的源代码,确切地了解如何找到jquery POST url,并相应地进行修改

$channel = file_get_contents('https://t.me/s/telegram');
$urls = array();
$jumper = 0;
$jumper2 = 0;
$tempstr = '';
$dir = '/s/' ;

$findstr = "$.ajax: ". "\n". "url:";
while ($jumper <= strlen($channel) || 
strpos($channel, $findstr,$jumper + 1)) {
 $jumper = strpos($channel, $findstr,$jumper);
 $jumper2 = strpos($channel, ',' ,$jumper + 1);
 $urls[] = substr($channel, $jumper + 9, $jumper2 - $jumper + 10);
}

foreach ($urls as $url) {
 file_put_contents($dir . $url);
}

echo $channel;