我是Javascript的新手,但没有编程。我正在尝试编写一个与服务器交换信息的程序。我无法让它工作,甚至简化和借用其他人的代码也无济于事。我做错了什么?
这是客户:
<!DOCTYPE html>
<html>
<head>
<title>Testing</title>
</head>
<body>
<script>
GET_JSON = function(callback) {
var req = new XMLHttpRequest();
req.open(POST, "http://www.skutan.com/cgi-bin/hvserver.cgi", true);
req.onreadystatechange = function() {
if (this.readyState == 4) {
callback(JSON.parse(req.responseText));
}
}
req.send("a=2&b=1");
}
JSONCallback = function(JSONObj) {
alert(JSONObj);
};
</script>
<button type="button" onclick="GET_JSON(JSONCallback)">Test</button>
<h1>.</h1>
<span id="koord"></span>
</body>
</html>
服务器在perl中使用,看起来像这样:
#!/usr/bin/perl -wT
use strict;
use CGI qw(:standard);
my @fields = param;
my $json_ut = "{\"a\": 1, \"b\": 2}";
print("Content-type: application/json; charset=utf-8\n\n");
print("$json_ut");
为什么我在客户端没有任何警报?
答案 0 :(得分:0)
如果您检查了浏览器的控制台,则会发现错误,例如
ReferenceError: POST is not defined
引用该行
req.open(POST, "http://www.skutan.com/cgi-bin/hvserver.cgi", true);
应该是
req.open("POST", "http://www.skutan.com/cgi-bin/hvserver.cgi", true);