How do I return JSON from an action in FW/1?

前端 未结 3 619
情书的邮戳
情书的邮戳 2021-01-24 20:50

FW/1 seems to be oriented to returning complete web pages what if JSON data is needed? A typical layout looks like:



        
3条回答
  •  攒了一身酷
    2021-01-24 21:12

    I have used code that overrides the onMissingView() method of Framework.cfc.

    I wrap my response up in a variable named rc.json then use code similar to this in my Application.cfc.

    function onMissingView( rc ){
        if( structKeyExists( rc, 'json' ){
            var response = getPageContext().getresponse()
            response.setContentType( 'application/json' );
            return serializeJSON( rc.json );
        }
        else{
            //we need this to fire off valid onMissignView error.
            raiseException( "FW1.viewNotFound", "Unable to find a view for '#request.action#' action.", " '#request.missingView#' does not exist.");
        }
    }
    

    I use other logic to do a cfdump of rc.json when request is not an AJAX request. But this is scaled down to bare minimum.

提交回复
热议问题