获取FW / 1 2.2以返回application / json

时间:2013-12-11 05:16:24

标签: json coldfusion fw1

FW / 1有一个隐藏在其中的功能

private string function renderDataWithContentType() {
    var out = '';
    var contentType = '';
    var type = request._fw1.renderData.type;
    var data = request._fw1.renderData.data;
    var statusCode = request._fw1.renderData.statusCode;
    switch ( type ) {
    case 'json':
        contentType = 'application/json; charset=utf-8';
        out = serializeJSON( data );
        break;

看起来它有一个内置机制来返回application / json,text / xml和text / plain。

我找不到任何关于如何触发此事的文档。

注意:这不是重复:How do I return JSON from an action in FW/1?

1 个答案:

答案 0 :(得分:6)

您可以阅读documentation

来自文档

...

从2.2开始,您可以使用新的renderData()函数直接返回数据,绕过视图和布局。

variables.fw.renderData(contentType,resultData);

调用此函数不会从控制器退出,而是告诉FW / 1,不应查找要呈现的视图,而应将resultData值转换为指定的contentType,这应该是完整HTTP请求的结果。

contentType可以是“json”,“xml”或“text”。 Content-Type HTTP标头自动设置为:

  • 应用/ JSON;字符集= UTF-8
  • 文本/ XML;字符集= UTF-8
  • 文本/无格式;字符集= UTF-8

...