基于NodeJS的前后端分离的思考与实践(三)轻量级的接口配置建

2020-06-17 05:52:37易采站长站整理

<script type=”text/javascript”>
    KISSY.use( “modelproxy”, function( S, ModelProxy ) {
        // !配置基础路径,该路径与第二步中配置的拦截路径一致!
        // 且全局配置有且只有一次!
        ModelProxy.configBase( ‘/model/’ );

        // 创建model
        var searchModel = ModelProxy.create( ‘Search.*’ );
        searchModel
            .list( { q: ‘ihpone6’ } )
            .list( { q: ‘冲锋衣’ } )
            .suggest( { q: ‘i’ } )
            .getNav( { q: ‘滑板’ } )
            .done( function( data1, data2, data3, data4 ) {
                console.log( {
                    “list_ihpone6”: data1,
                    “list_冲锋衣”: data2,
                    “suggest_i”: data3,
                    “getNav_滑板”: data4
                } );
            } );
    } );
</script>

同时,ModelProxy可以配合Midway另一核心组件Midway-XTPL一起使用,实现数据和模板以及相关渲染过程在浏览器端和服务器端的全共享。关于ModelProxy的详细教程及文档请移步https://github.com/purejs/modelproxy

总结

ModelProxy以一种配置化的轻量级框架存在,提供友好的接口model组装及使用方式,同时很好的解决前后端开发模式分离中的接口使用规范问题。在整个项目开发过程中,接口始终只需要定义描述一次,前端开发人员即可引用,同时使用River工具自动生成文档,形成与后端开发人员的契约,并做相关自动化测试,极大地优化了整个软件工程开发过程。

【注】River 是阿里集团研发的前后端统一接口规范及相关工具集合的统称