我正在尝试建立一个链接,当它被点击时,它会转到它应该的网站,但它也运行一个cgi脚本。我找到了不同的例子,但我仍然不完全理解它。
实质上,我有两个问题:
答案 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。重定向可能是更好的方法。