为了支持JSONP请求,服务器必须在响应中包含
P或“
Padding ”。
jQuery111108398571682628244_1403193212453({"Name":"Tom","Description":"Hello it's me!"})
语法错误,
"Unexpected token :"是因为JSONP被解析为Javascript,其中JSON
{...}也代表blocks。它仅利用JSON和Javascript的相似语法来定义要传递给全局函数调用的数据。
默认情况下,jQuery将包含
callback带有函数名称的query-string参数:
var callback = req.query.callback;var data = JSON.stringify({ Name : "Tom", Description : "Hello it's me!"});if (callback) { res.setHeader('Content-Type', 'text/javascript'); res.end(callback + '(' + data + ')');} else { res.setHeader('Content-Type', 'application/json'); res.end(data);}
ExpressJS还包括
res.jsonp()已经实现此条件的:
app.get( '/', function( req, res ) { console.log( 'req received' ); res.jsonp({ Name : "Tom", Description : "Hello it's me!" });});
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)