【问题标题】:Create REST API in ATK4?在 ATK4 中创建 REST API?
【发布时间】:2011-10-10 17:43:42
【问题描述】:

刚开始摸索ATK4。我想将它用作后端 API(如果可能)以及基于 API 将使用的相同数据创建一个小型 CMS。该 API 将被浏览器插件访问,因此 ATK4 不会进行渲染。

所以基本上我的问题是,ATK4 是否支持创建您自己的 REST API,或者我基本上必须自己创建这个功能?我找到了 API 文档,但他们似乎专注于为渲染“引擎”提供 API 方法。

如果我自己做这个,在 ATK4 上实现它的最佳方法是什么? (就未来的兼容性而言)。

谢谢

【问题讨论】:

    标签: php user-interface frameworks atk4


    【解决方案1】:

    有一种直接的方法和通用的方法来解决这个问题。

    直截了当的方法就这么简单:

    class page_api_article_add extends Page {
        function init(){
             parent::init();
             try {
                 $this->add('Model_Article')->set($_POST)->update();
                 echo json_encode("OK");
                 exit;
             }catch (BaseException $e){
                 echo json_encode($e->getMessage());
                 exit;
             }
        }
    }
    

    更复杂的解决方案包括构建以下项目:

    • 您需要一个基于 ApiCLI 的自定义 API。
    • 您需要单独的页面路由
    • 在 API 中,您需要定义可以通过 API 访问哪些模型以及应该使用哪个控制器
    • 控制器将在模型上实现参数验证和操作,例如创建、更新、删除、复制等
    • 支持密钥验证
    • 自定义例外

    我曾经实现过这个,但我需要与我的客户协商,以确保我可以将代码捐赠给 atk4-addons。

    目前我建议您在通用 API 发布之前走“直截了当”的路线。

    【讨论】:

    • 谢谢,在这一点上,API 将非常轻量和简单,但在未来我希望它会变得更大更复杂.. 所以我期待听到更多关于你的信息通用 API 实现:)
    • 嗨,有关于通用 ATK4 API 的消息吗?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-10-09
    • 2018-12-19
    • 2020-12-14
    • 1970-01-01
    • 1970-01-01
    • 2015-08-02
    相关资源
    最近更新 更多