【问题标题】:add paramters to jsonp callback function in ExpressJS and NodeJS在 Express JS 和 NodeJS 中为 jsonp 回调函数添加参数
【发布时间】:2016-04-03 03:37:47
【问题描述】:

我正在使用$.ajax 向 ExpressJS 处理程序发出 jsonp 请求,该处理程序返回:

res.jsonp({status: "200", message: "Finished"})

这很好用。

我希望使用这些参数调用 JQuery ajax 成功函数中的回调函数:

callback(status, message)

但如您所见,我可以返回来自 ExpressJS 的 JSON 数据

附:在JQuery成功函数中检查状态是正确的方式,即:

$.ajax({
   ///.....
   success: function(resp){
      if(resp && resp.status === '200'){
         // success
      }
      else {// error
      }
   }
})

【问题讨论】:

    标签: jquery ajax node.js express jsonp


    【解决方案1】:
    1. 来自 Express 文档: http://expressjs.com/en/api.html#res.jsonp 最好使用res.status(200).jsonp({ message : "Finished" })。 默认情况下,JSONP 回调名称只是 callback。用jsonp callback name 设置覆盖它。

    2. 成功回调原型为Function( Anything data, String textStatus, jqXHR jqXHR )。 因此,要检查响应状态,您可以执行以下操作:

      $.ajax({
          // ...
          success : function(data, status, xhr) {
              if (xhr.status === 200) {
                  // ...
              }
          }
      });

    【讨论】:

      猜你喜欢
      • 2014-04-30
      • 2014-04-03
      • 2011-09-27
      • 2017-05-21
      • 2013-02-22
      • 1970-01-01
      • 2019-12-07
      • 1970-01-01
      相关资源
      最近更新 更多