zoukankan      html  css  js  c++  java
  • 不写画面的网页程序设计,Web API、Web Service、WCF Service


    客户有一个系统,经常要连上我方,查询数据
    以前的作法是给对方一个账号,让他可以连上我们的DB来查询。

    所以,早期的同仁,真的给他们DB链接字符串
    客户的Windows程序、网站就真的靠这么危险的方式,连上我们公司的DB。

    但怎么想都觉得危险,而且......
    如果对方SQL指令乱下,把效能搞得更烂,岂不是惨兮兮?
    如果对方不小心,配置文件被偷走,看到我方DB Connection String怎么办?
    几年前的 Internet还没有那么大的带宽,所以还得种种限制,避免他们一次查询太多数据


    我接手以后,改用了Web Service (WS-*)来做,之前我有几篇文章介绍过。
    没想到一晃眼也七八年过去了

    满有趣的,前些年,我网站上流量或是点阅率最高的就是 -- 搜寻「Web Service」这个关键词而连上我的网站

    Web Service入门 #1,透过VS 2005/2008/2010 撰写一个Web Service
    https://www.dotblogs.com.tw/mis2000lab/archive/2008/09/26/webservice_1.aspx

    后来客户导入了电话语音卡(CTI)

    就是我们打电话给银行、信用卡公司,电话里面的语音系统都会请您这样操作:
    按下一,帮您查询账单金额
    按下二,帮您做XYZ等等
    按下九,帮您转接专人。

    你把我打一顿,我也不会、不懂CTI电话语音卡、电话总机啊
    那我怎么跟厂商合作?数据怎么交换?

    厂商问我:会不会Socket,可以彼此串连?
    我不会。

    我问他:您的CTI可以连上网络吗?可以收发网页信息吗?
    厂商说可以。

    于是,透过Web Service一路做到今天。

    去年,这套系统改成 Mobile APP(手机与平版)的界面。
    我呢?我要怎么配合修改?

    没有,我完全没事做,发呆,等厂商写好后,跟我测试而已
    然后就上线了

    然后呢,莫名其妙的,变成这部门第一套走入行动运算的功能
    老板很开心地拿去跟别人炫耀
    (我什么事都没做,结果呢?大家都很开心,包含:我、合作厂商、老板、客户)


    前些天,一位大学的老师跟我聊天,说现在流行前端技术,大家都在做手机APP
    他担心:有了画面,那资料谁来喂?谁负责提供数据给这些APP呢?
    (意思是说:每个人都在搞手机APP、手机游戏。一窝蜂,好像没人想做后端、数据库程序了)

    我跟他说,那很好啊。都没人做,就给我做吧。
    反正我对于前端技术没兴趣,我就专心挖数据、传递数据,提供他们(各种前端技术)数据吧

    他们(各种前端技术)负责  "画面"展示
    我负责  "资料存取"

    这样很棒,大家都有工作。
    而且不像以前,画面做得不好看、配色、UI......对方GGYY了老半天,但那不是我的专长,我怎样都满足不了对方的审美观

    终于跟讨人厌的「画面」「UI」脱离了
    我反倒松了一口气


    这代表我不用接 End User的抱怨电话了,以后他们来电抱怨,顶多就是我给的数据不对
    (虽然数据有错,是很严重的事,但至少我熟悉这一块,比较好抓出问题)

    User再也不会抱怨 "画面"的问题、字体大小、UI不顺或是不好看
    (前端画面的美丑,我比较无能为力)

    以前写 ActionScript程序产生 Flash动画与AIR时,觉得很奇怪,
    怎么他们的程序没有链接数据库的部分呢?

    后来才发觉,他们透过Web Service来处理,让「画面」归「画面」,「数据源」归「数据源」
    其实区分得很清楚。

    以前都说我们是写 "网页" 的
    以后,我可以说我们是提供「数据」的、提供「服务」的

    Web Service / WCF Service / WebAPI 救了我们一命,也延续了我们(网页程序)的生命周期

    相关文章:

    WCF 新手入门 #2 -- 撰写第一个 WCF程序
    https://www.dotblogs.com.tw/mis2000lab/archive/2010/09/16/wcf_02_diy.aspx

    [入门范例] ASP.NET Web Service (asmx) 与 jQuery AJAX
    https://www.dotblogs.com.tw/mis2000lab/archive/2015/05/19/jquery_ajax_web_service.aspx

    WEB SERVICES开发实战:使用 ASP.NET WEB API 2
    http://blog.kkbruce.net/2014/01/web-service-develope-use-aspnet-web-api-2.html

  • 相关阅读:
    java.lang.NoSuchMethodError:antlr.collections.AST.getLine() I
    T7 java Web day01 标签HTML
    T6 s1 day19
    T5 s5 Day18
    T5 s4 Day 17
    T5 s3 day16
    T5 s2 Day 15
    T5 s1 day14
    T4 S03 day 12
    T4 S01 day1
  • 原文地址:https://www.cnblogs.com/mis2000lab/p/WebServer_WCFServer_WebAPI.html
Copyright © 2011-2022 走看看