自己工作上常要處理的網站,
規模小流量也小所以考量少格局也小,
但當自己的網站要獲取自己另個網站資料之時……
才發現到原來自己先前的網站,
只單純地考量人的簡單使用,
而沒考量第三方的程式怎麼來用這網站的資料。
網站的趨勢
過去網頁發展的趨勢大概像是這個樣子:
在2000年前有個網址,放個首頁就不錯了。
2000年時,網頁要有互動的功能,
像是有留言之類的,這樣就了不起了。
而2010年時,卻是要移除掉網頁的限制,
藉由API把更多人的互動聚集在一起。
資料與表現的區隔需要
剛開始網頁的開發,總是把資料與呈現的樣式綁在一起,
第三方要用其資料部份不大容易,
常常是要透過解析網頁的方式把資料取出;
在這種網頁應用程式,資料、格式未區隔,
當要用不同型式界面呈獻時,
像行動頁面、第三方APP的利用,
或其他應用網站來存取此AP的資料時,
又得再費心寫個對應的界面。
如果一開始的開發,
就把資料與呈現的界面區隔開,
容易給第三方使用。
API的風潮
目前大型的網站,多有提供彈性的API,
利於廣大的第三方開發者存取,
使得該網站的使用更為普及。
過去API較是給單位內部各不同AP間交互作用,
而現在公開的API成為風潮。
在這篇文章:
6,000 APIs: It’s Business, It’s Social and It’s Happening Quickly
呈現了近年來API的成長數量急增:
通常公開的API是為了社群網路、行動裝置的需要提供,
不只是為了易於存取,
背後帶來的社群互動或可能的商機,
也可能是動機的來由。
促成這風潮,也因為
過去的網路各技術、效能議題、分散式、Scalability等議題,
都為這海量級的處理有了支援基礎。
而目前API常用的技術是藉由 HTTP、REST、JSON 呈現,
怎樣站在公開的API的肩膀上發展,
自己怎樣提供API給自己或第三方有彈性使用。
這似乎在網頁開發的議題上較少提供,
而試著以API的導向發展方式來進行這一系列。