首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >公共web服务器从私有服务器获取数据

公共web服务器从私有服务器获取数据
EN

Stack Overflow用户
提问于 2014-08-19 18:40:29
回答 2查看 152关注 0票数 0

我有一个web服务器,它有两个接口。1个公共部门和1个私人部门。

私有接口位于我将查询的服务器的网络上。

我使用ajax来启动脚本getGraph.php来提取图形的图像。如果我使用的是专用网(VPN)上的pc,这很好。任何其他网络上的任何其他pc都会失败(超时)。我猜是因为ajax启动了请求,所以请求来自我的pc,而不是来自not服务器。这是真的吗?

代码语言:javascript
复制
 $('.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

代码语言:javascript
复制
echo "<img src='https://somePrivateAddress/getImage.php?id=" . $_POST['id'] . ">";

如果是这样的话。如何使用jquery手风琴菜单来启动查询?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-08-19 19:22:47

base64_encode()可以用来“拉出图像并打印出来”。就像这样:

代码语言:javascript
复制
$type = pathinfo($url, PATHINFO_EXTENSION);
$data = file_get_contents($url);
$base64 = 'data:image/' . $type . ';base64,' . base64_encode($data);
echo '<img src="' . $base64 . '>';

您可能需要重新编写这个示例以满足您的需要,因为我不知道您在getImage.php中有什么。

票数 1
EN

Stack Overflow用户

发布于 2014-08-19 18:45:47

你是对的。AJAX完全在客户端执行(连同所有其他javascript)。您将需要一个隧道,通过公共接口到您的私有You服务器。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25390688

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档