我有一个REST API服务,写在Node.js + Express上,目前支持JSON格式的响应。
现在,我还需要添加对JSONP响应的支持,所以每个人都可以通过将 alt = JSONP 添加到请求字符串来获取它。
所以,我的问题是,这是最好的方法吗?
可能,有一个模式或生活的例子?
谢谢!
答案 0 :(得分:6)
官方支持的方法如下 -
首先,设置您的JSONP回调参数名称:
app.set('jsonp callback name', 'callback');
然后,将res.json
或res.send
的所有实例更改为res.jsonp
。
例如,res.jsonp(500, { error: 'message' })
如果请求中提供了callback
参数,则响应将使用提供的函数名称包装为JSONP,但如果不是,则只返回JSON。
之后,返回JSONP: GET / myapi / v1 / users?callback = responseCallback
这不是: GET / myapi / v1 / users