• 基于Ajax的新式服务模型


    总的思想:

    将后台的服务与前台的 js 函数签名自动同步,一个服务由开发者在一个地方进行维护。

    受到博客园文章的影响:http://www.cnblogs.com/wzcheng/archive/2010/05/20/1739810.html

    服务方法的自动暴露与代理js函数的自动生成

    function SetPhotoShareMode()
    {
        var tPhotoID = $id("Photo_ID").innerText;
        var tShareMode = $("#SelectShareMode").val();
        if (tShareMode=="NotSet")
        {
            alert("没有选择共享属性!");
            return;
        }
        if (confirm("此操作将影响照片的共享性,请确认是否执行?","执行","取消"))
        {
            $.post("/AjaxServer/Server.ashx?service=photo&method=SetShareMode", {id:tPhotoID,ShareMode:tShareMode }, function(data){ ShowJSONMsg(data);} );   
        }
    }

    AjaxServer/Server.ashx?service=photo&method=SetShareMode&format=js

    == photo/SetShareMode.javascript

    .javascript 为虚拟文件,最终指向  AjaxServer/Server.ashx?service=photo&method=SetShareMode&format=js

    而上面的服务在 Format=js 时自动生成包装其 SetShareMode 的 js 函数;

    客户端的应用:
    1、将上面的 .javascript 虚拟文件插入网页,这就是自动生成的js文件
    2、在页面上使用js的 SetShareMode(photoid,sharemode); 方法调用后台的服务即可。

    API文档的自动化与同步:

    所以客户端的任务就是一个:只需要知道一个 js 方法如何使用就行了。
    如果不知道如何使用,使用  AjaxServer/Server.ashx?service=photo&method=SetShareMode&format=api 即可调出参考

    当然,后台的所有服务应该有一个总的 api 可供参考,如此,则前台人员随时可以有完整的文档可以看。

    文档的编写应该由程序员自己完成,就写在自己开发的类当中,与代码一起编辑。自己写的东西自己看,系统再准备一个测试工具,提供给程序查阅自己的程序,随时保证代码正确,并且文档正确。

    api如何保证安全呢?

    在交付后,采用系统的一个变量,指示一下系统当前的状态,如果是发布状态,就不要出现文档。
    在应用程序出现问题后,如果需要查看api文档,登录应用程序的后台,将系统的状态设置一下即可。

  • 相关阅读:
    Osg-地图界面显示指北针(指南针)
    学习c# 7.0-7.3的ref、fixed特性并在Unity下测试
    Linux下使用FreeBSD的ee
    C++ 中 malloc/free与 new/delete区别
    CMake 手册详解
    go 从入门到了解
    LINQ:对结果进行分组(MSDN)
    LINQ: List Contains List
    C# 如何使用log4net
    控制台程序要最后加上一句 Environment.Exit(0);
  • 原文地址:https://www.cnblogs.com/chinaontology/p/1762789.html
Copyright © 2020-2023  润新知