发布网友 发布时间:2022-04-19 22:54
共2个回答
热心网友 时间:2022-04-19 19:27
首先你先确定你是不是需要跨域去访问你的目标站点:aaa.com(跨域指的是你当前所在的网址跟你input的网址是否同源,因为浏览器对跨域访问是有*的,所以这点需要考虑。)
如果需要跨域,且aaa不允许跨域访问的话,这件事情只能在后端去做,否则可以在前端实现。
然后大概讲一下实现思路,不管是后端还是前端思路都差不多,首先你发起一个http请求去访问input的网站(前端自己发起ajax请求,后端node可以用$http模块发起请求,tomcat等服务器同理),得到响应的html页面内容之后你再做一次文本解析(例如正则匹配的方式)获取你想要的目标字符串,最后加上你自己的链接就行了。追问可以跨域的,用正则匹配应该可以,不过我没学过这些,只会一些简单的html,方便的话麻烦你帮忙写一下,谢谢你!
热心网友 时间:2022-04-19 20:45
<html><head><title>test</title></head><body><?php if(isset($_POST['target']) && strlen($_POST['target'])>0){ if(strtolower(substr($_POST['target'],4))==='http' || strpos($_POST['target'],"..") === false){ $source = file_get_contents($_POST['target']);//file_get_contents方式获取页面内容,所以必须有上面的判断 否则会产生本地文件读取漏洞 $reg = '#/([\d]+).m3u8#i'; if(preg_match($reg,$source,$m)){ echo "https://bbb.com/".$m[1]; }else{ echo "输入的链接有误2!"; } }else{ echo "输入的链接有误3!"; } }else{ echo "输入的链接有误1!";}?><br /><form action="#" method="post">输入地址:<input type="text" name="target" style="width:400px;"><br /><input type="submit" value="提交"></form></body></html>