您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

jQuery.ajax#get之后出现意外的令牌冒号JSON

jQuery.ajax#get之后出现意外的令牌冒号JSON

为了支持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!"
    });
});
JS 2022/1/1 18:13:36 有628人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶