我有一个简单的CGI脚本,可以根据需要生成纯文本内容。例如,http://1.2.3.4/hello.cgi?name=Joe
将返回Hello Joe!
。
如何在Javascript中将其读入字符串?
name = "Joe";
url = "http://1.2.3.4/hello.cgi?name=" + name;
greeting = loadThis(url);
我是Javascript的新手,所以即使是天真的方法(即不需要URL转义......)对我有帮助:))
答案 0 :(得分:1)
基于此FAQ on JavaScriper.net,我找到了适用于我的解决方案。但是,被调用的脚本必须与调用者在同一台机器上,否则我会从浏览器中获得安全性错误。
显然这就是@Makkes提到的。但是,我现在非常高兴在同一台机器上安装hello.cgi。
以下是代码:
function loadThis(localuri) {
var oRequest = new XMLHttpRequest();
var sURL = 'http://'
+ self.location.hostname
+ localuri;
oRequest.open('GET',sURL,false);
oRequest.setRequestHeader('User-Agent',navigator.userAgent);
oRequest.send(null);
if (oRequest.status==200) return(oRequest.responseText);
else alert('Error executing XMLHttpRequest call!');
}
name = "Joe";
localuri = "/hello.cgi?name=" + name;
greeting = loadThis(localuri);
(当然,这不能正确处理带空格或特殊字符的名称,但这是另一个故事。)