使用ajax通过jsonp函数“callback1”传输jsonp数据
<script type="text/javascript">
$(document).ready(function () {
$('#link').click(function () {
$.ajax({
url: 'http://127.0.0.1:2000',
dataType: "jsonp",
jsonp: "callback1",
success:function(data){
$('#result').val('my name is ' + data.name);
}
});
});
});
</script>
下面的是服务器端
var http = require('http');
var url = require('url');
var port = 2000;
var data = { 'name': 'ss', 'age': 10 };
http.createServer(function (req, res) {
var params = url.parse(req.url, true);
if (params.query && params.query.callback) {
console.log(params.query);
var str = params.query.callback1 + '(' +JSON.stringify(data)+')';
console.log(str);
res.end(str);
} else {
res.end(JSON.stringify(data));
}
}).listen(port,function(){
console.log('server is listening on port ' + port);
});
但是当我以这种方式更改Ajax时:jsonp: "callback"
并以这种方式修改服务器代码:
var str = params.query.callback + '(' +JSON.stringify(data)+')';
它可以工作。
任何人都可以帮助检查为什么我不能使用“回调”以外的其他jsonp函数名称?