个性化阅读
专注于IT技术分析

如何使用Symfony 1.4返回JSON响应

JSON是一种轻型格式, 用于在应用程序之间进行数据交换, 已广泛用于以任何语言(例如PHP, Ruby等)编写的每种类型的Web应用程序。要从旧版Symfony 1.4中的操作返回JSON响应, 你首先需要更改响应的内容类型, 否则最终将返回一个字符串, 该字符串不带有你要发送的格式的特定标头。 JSON的正确内容类型是application / json。最后返回symfony操作的$ this-> renderText方法的结果, 该方法期望将JSON编码的字符串作为第一个参数(使用json_encode):

<?php

/**
 * An actions.class.php file from any of the modules of your application.
 *
 */
class mymoduleActions extends sfActions 
{
    /**
     * Actualiza el estado de un módulo via AJAX.
     * 
     * @param sfWebRequest $request
     * @return type
     */
    public function executeMyActionWithJsonResponse(sfWebRequest $request){
        // Your action logic

        // Set the response format to json
        $this->getResponse()->setHttpHeader('Content-type', 'application/json');
        
        // Use renderText to return a json encoded array !
        return $this->renderText(json_encode(array(
            "foo" => "bar"
        )));
    } 
}

MyActionWithJsonResponse操作的响应将是一个JSON字符串, 即:

{"foo":"bar"}

编码愉快!

赞(0)
未经允许不得转载:srcmini » 如何使用Symfony 1.4返回JSON响应

评论 抢沙发

评论前必须登录!