【问题标题】:Express api res.jsonp returns double callbackExpress api res.jsonp 返回双重回调
【发布时间】:2013-10-18 07:51:38
【问题描述】:

我有一个 Express 服务器在 8080 端口运行这条路由

app.get('/api', function (req, res) {
  res.jsonp('user API is running');
});

我打开一个浏览器窗口来

http://ec2-54-226-27-72.compute-1.amazonaws.com:8080/api?callback=hello

浏览器中的响应是

hello && hello("user API is running");

为什么有 2 个你好?这是来自 Express 的正确 JSONP 响应吗?它会被客户端正确处理吗?

【问题讨论】:

    标签: node.js express jsonp


    【解决方案1】:

    是的,这是正确的格式。第一个 hello 的目的是在尝试调用之前确保客户端上存在函数 hello(如果该函数不存在,则会发生错误)。

    在速递书here的预览章节中有一些关于此的信息。我前几天刚读过。

    【讨论】:

    • 谢谢。抱歉坚持,但 JSON_CALLBACK 是一个特殊的回调名称,将数据返回到客户端上的标准成功或错误回调?这对我有用。
    • 从GET请求参数callback=json_callback?您可以将 json_callback 重命名为您喜欢的任何名称——当函数返回时,它将在客户端上调用该函数,就像您对 hello 回调所做的那样。恐怕我对 JSONP 的了解并不多。
    猜你喜欢
    • 2018-11-27
    • 2012-09-25
    • 2011-07-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-03-07
    • 2016-04-20
    • 2019-10-13
    相关资源
    最近更新 更多