通过JavaScript访问cgi脚本

时间:2012-01-24 20:13:28

标签: javascript perl cgi

我正在尝试建立一个链接,当它被点击时,它会转到它应该的网站,但它也运行一个cgi脚本。我找到了不同的例子,但我仍然不完全理解它。

实质上,我有两个问题:

  1. 我可以在哪里托管脚本以便访问它?
  2. 如何访问它?

2 个答案:

答案 0 :(得分:1)

<script>
function callYourCGI(){
    var i = new Image();
    i.src = "your-cgi-url?name=value&name2=value2";
}
</script>
<a href="the-next-document.html" onclick="callYourCGI()">

Image对象是HTML DOM的一部分。它允许您在HTML页面中操作图像。在此处阅读:http://www.javascriptkit.com/jsref/image.shtml

该脚本正在创建一个图像对象,然后将CGI脚本的URL分配给SRC属性。这使得浏览器对URL的内容执行get请求。在这种情况下,您不会显示图像对象,因此CGI脚本返回的内容不必是真实图像。如果可以,如果你想,但是。无论哪种方式,副作用是调用CGI脚本,如果需要,可以使用一些参数。此方法的一个优点是它不违反相同的原始策略,因为允许从任何地方加载图像。

答案 1 :(得分:1)

  

我可以在哪里托管脚本以便访问它?

如果您想从JavaScript访问它,那么它必须与运行JavaScript的页面位于相同的源(即主机名和端口)。

  

如何访问它?

您可以忘记JavaScript,拥有常规链接,然后让CGI执行302重定向,或者您可以使用Ajax

注意时间问题。浏览器可以在它发出Ajax请求之前转到下一个URL。重定向可能是更好的方法。