我有一个有2个接口的Web服务器。 1公共和1私人。
私有接口位于具有我将要查询的服务器的网络上。
我正在使用ajax触发脚本getGraph.php来拉取图形的图像。 如果我使用专用网络(VPN)上的电脑,这工作正常。任何其他网络上的任何其他PC都会出现故障(超时)。我的猜测是因为ajax正在启动请求,所以请求来自我的电脑,而不是来自网络服务器。那是真的吗?
$('.menu,.menu2').click(function(){
var action = $(this).attr('id')
$.ajax({
type:"POST",
url:'getGraph.php',
data:"id="+action,
success: function(result){
$('#data').html(result);
}
getGraph.php
echo "<img src='https://somePrivateAddress/getImage.php?id=" . $_POST['id'] . ">";
如果是这样的话。如何使用jquery手风琴菜单启动查询?
答案 0 :(得分:1)
你是对的。 AJAX完全在客户端执行(以及所有其他javascript)。您将需要通过公共接口连接到您的私人Web服务器。
答案 1 :(得分:1)
base64_encode()
可用于“拉动图像并将其打印”。像这样:
$type = pathinfo($url, PATHINFO_EXTENSION);
$data = file_get_contents($url);
$base64 = 'data:image/' . $type . ';base64,' . base64_encode($data);
echo '<img src="' . $base64 . '>';
您可能需要重新使用此示例以满足您的需求,因为我不知道您在getImage.php
中拥有的内容。