返回网页JSON的PHP rest API

返回网页JSON的PHP rest API,php,html,web-services,rest,Php,Html,Web Services,Rest,我正在开发一个返回JSON响应的PHP restful API。这是当前本地移动应用程序消费(iOS/Android) 我的问题是,是否可以使用相同的RESTfulAPI进行网站消费?或者我需要支持restful API和JSON的HTML响应吗?如何从web服务获取JSON响应以显示为网页?或者我是否需要实现输出格式化程序作为框架的一部分,以便在需要时作为HTML响应 我试图搜索这个问题的答案,但找不到任何有用的答案。您可以创建API,使用XSL构造HTML从XML返回XML和XML 这个链接

我正在开发一个返回JSON响应的PHP restful API。这是当前本地移动应用程序消费(iOS/Android)

我的问题是,是否可以使用相同的RESTfulAPI进行网站消费?或者我需要支持restful API和JSON的HTML响应吗?如何从web服务获取JSON响应以显示为网页?或者我是否需要实现输出格式化程序作为框架的一部分,以便在需要时作为HTML响应


我试图搜索这个问题的答案,但找不到任何有用的答案。

您可以创建API,使用XSL构造HTML从XML返回XML和XML

这个链接会很有帮助:


Emm。。。例如,作为理论,你可以这样做:

class MyOutput
{
    const CTX_HTML = 1;
    const CTX_JSON = 2;
    //const CTX_XML = 3;
    //const CTX_CLI = 4;
    //const CTX_ETC = N;

    private $_data = null;

    public function __construct()
    {
        $this->_data = new StdClass();
    }
    public function __set($prop, $value)
    {
        $this->_data->{$prop} = $value;
    }
    public function render($context)
    {
        if ($context == self::CTX_JSON) {
            header('Content-Type: application/json');
            echo json_encode($this->_data);
        } else {
            header('Content-Type: text/html');
            // TODO extract/pass data into layout/template
        }
    }
}


$Output = new MyOutput();

$Output->foo = 1;
$Output->bar = 2;
$Output->render(MyOutput::CTX_JSON);
$Output->render(MyOutput::CTX_HTML);

但我认为API应该放在分离的主机上。因为这是不同的应用程序。

您可以使用ajax。关于这一点有很多问题。下面是其中之一:现在使用RESTAPI/json构建网站后端是相当标准的。看看各种JavaScript框架,它们将处理数据绑定、ajax等。