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

Jam*_*ler 0 coldfusion json 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;
Run Code Online (Sandbox Code Playgroud)

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

我找不到任何关于如何触发这个的文档.

注意:这不是重复:如何从FW/1中的操作返回JSON?

Sea*_*eld 6

你可以阅读文档:

从文档中

...

从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的

...