我需要在服务器A上打开一个html页面并从服务器B的网页中获取一些值。换句话说,我想在服务器A的网页上显示server-B的网页值。
我需要来自的值的网页(服务器-B)数据正由我无法访问的来源填充。这些值被写入看起来像这样的变量:[[0]]。访问页面时,使用当前数据填充值[[0]]。
我尝试将标签附加到[[0]]以允许使用表单帖子和get方法从服务器A读取,但未成功。
我的方法是将[[0]]中的数据移动到服务器A网页?
Server-B页面:
<html>
<!-- Head information for the page including page title -->
<head>
<title>Test</title>
</head>
<body color=#FFFFFF>
<!-- Start of your page body -->
<!-- This code displays the current tag value for index 0
[[0]] will be replaced by the tag value a the time the page is loaded -->
The value of the tag with index 0 is [[0]]
<!-- Added code to store [[0]] in div -->
<div class="pink-box" id="thatDiv">[[0]]</div>
</body>
</html>
我为Server-A添加了这个html / javascript,我收到COR描述的错误:
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Get Div</title>
<style>
body {
font-size: 12px;
font-family: Arial;
}
</style>
<script src="//code.jquery.com/jquery-1.10.2.js"></script>
</head>
<body>
<b>Div:</b>
<ol id="Result"></ol>
<script>
$("#Result").load("http://192.168.1.168/user/default.html #thatDiv");
</script>
</body>
</html>
答案 0 :(得分:0)
您可以获取HTML文件的内容并找到起始位置&#34; [[&#34;和结束&#34;]]&#34;并抓住两者之间的数据。
<?php
$serverBFile = "http://www.serverB.com/file.html";
$serverBHTML = file_get_contents($serverBFile);
$serverBStart = stripos($serverBHTML,"[[");
$serverBEnd = stripos($serverBHTML,"]]");
$serverBLength = $serverBEnd - $serverBStart;
$serverBValue = substr($serverBHTML, $serverBStart, $serverBLength);
?>
答案 1 :(得分:0)
我过去这样做的方式是使用像jQuery这样的DOM解析工具。
如果您可以访问node.js服务器,则可以使用jQuery插件加载服务器B的网页,然后查询与所需标记一致的内容,包括ID,类名,标记名,位置等。
<html>
<!-- Head information for the page including page title -->
<head>
<title>Test</title>
</head>
<body color=#FFFFFF>
<!-- Start of your page body -->
<!-- This code displays the current tag value for index 0
[[0]] will be replaced by the tag value a the time the page is loaded
let's say [[0]] becomes a <div>-->
<div class="pink-box" id="thatDiv">data I want</div>
</body>
</html>
从这里开始,通过$('#thatDiv').text()
或$('.pink-box').text()
提取文字相当容易。
这是一个相当简单的解决方案。将该值传入节点服务器中的变量后,只需公开一个REST调用,即服务器 - 网页可以向其发出AJAX请求。
我说使用节点的原因是因为该页面似乎具有必须使用JavaScript加载的动态内容。如果我更了解这个页面如何互动,我将能够为您的问题提供更具体的解决方案,