[ASP.NET] 如何使用「開放資料( Open Data ) 」? + (預備篇
文章推薦指數: 80 %
「資料開放(Open Data)」是指任何人都可以自由使用、修改、分享的資料,而「政府資料開放(Open Government Data)」,則是將政府機關因業務需求所蒐集、保有、管理的資料, ...
第11屆iThome鐵人賽
DAY
3
1
ModernWeb
ASP.NETWebForm入門30天系列第
3篇
[ASP.NET]如何使用「開放資料(OpenData)」?+(預備篇:介接前,應該準備好的三件事情)+如何簡單解釋API?
11th鐵人賽
碼屋(MARKWU)
團隊火箭隊
2019-09-0409:28:3712677瀏覽
本篇擷取重點:
什麼是開放資料(OpenData)?
介接前,應準備好的三件事情
一.何謂開放資料(OpenData)
「資料開放(OpenData)」是指任何人都可以自由使用、修改、分享的資料,而「政府資料開放(OpenGovernmentData)」,則是將政府機關因業務需求所蒐集、保有、管理的資料,在不涉及個人隱私及不違背法律限制下,提供給大家自由使用、修改與分享。
常用的「資料開放(OpenData)」平台,如下:
政府資料開放平台:https://data.gov.tw/
高雄市政府資料開放平台:https://data.kcg.gov.tw/
二.介接前,應準備好的三件事情
找到OpenData的API,了解API之特質
下載CHROME擴充外掛,了解資料架構及型態
於專案中下載NUGET套件-Newtonsoft.Json套件
1.找到OpenData的API,API之特質
本篇使用的OpenData範例為「高雄市政府資料開放平台」-「高雄市政府相關求才、求職、職業訓練資訊及最新資訊發佈(Json)」
step1.進入高雄市政府資料開放平台並點選上方的「資料集」
step2.左側點選您所要選擇的格式「JSON」並點選您所要選擇的主題
(高雄市政府相關求才、求職、職業訓練資訊及最新資訊發佈)
step3.點選您所要選擇的資料格式
(訓練就業中心最新資訊公告JSON格式)
step4.點選右上方綠色方塊-「前往存取資源」
step4.點選後,網站頁面將連線至「該資料開放(OpenData)」所存放伺服器之API
這是未經整理的Json格式字串,可藉由CHROME的擴充功能外掛來整理,詳細內容將於下段解釋。
==================================================================
貼心小補充:
API(ApplicationProgrammingInterface應用程式界面):
這不好解釋,但下方參考資料連結中有一個很棒的解釋,可以幫助大家理解。
EX:我們今天想要到自動販賣機買瓶可樂,可以分解成下方幾個動作:
a.今天你想取得一瓶原味可樂
b.只要單純的按下面版上原味可樂的按鈕
c.接著你就可以在取物口拿到一瓶可樂
上面第二個動作中的面版/按鈕,就是所謂的API了。
透過這個面版,你可以拿到可樂的過程大概就是:
想要一瓶可樂(想要的資料)->按下按鈕(送出資料需求)->拿到飲料(取得資料)
參考資料:
https://cola.workxplay.net/what-is-an-api/(大推薦)
不過也因為我們在API介接的Opendata,是存放在對方伺服器,而我們每次介接都是重新的向對方伺服器要資料,故有以下特性:我們的網頁內容會隨著對方伺服器的資料是同步的。
意即更新一起更新、檔案毀損一起毀損。
==================================================================
2.下載CHROME擴充外掛,了解資料架構及型態
瀏覽器右上方的「...」-「更多工具」-「擴充功能」
左上方的「擴充功能」-下方的「開啟CHROME線上應用程式商店」
搜尋擴充功能輸入「JSONView」-「加到CHROME」
回到剛才混亂的JSON頁面,按「F5」重新整理,應該就會出現排列好的Json格式,
並可使用右上方按鈕進行開關及設定。
==================================================================
貼心小補充:
需要先瞭解資料的「架構」及「型態」,在設立介接類別時才能事半功倍,甚至挖掘出資料「特性」,在往後要使用資料做出輸出時,都將會有莫大的影響。
==================================================================
3.於專案中下載NUGET套件-Newtonsoft.Json套件
專案(test123)-右鍵-管理NuGet套件
上方「瀏覽」-搜尋「Newtonsoft.Json」-「安裝」
安裝成功後,即可將Newtonsoft.Json.dll加入專案底下的參考之中,
並可於.aspx.cs檔案上方加入usingNewtonsoft.Json;來引用,便可使用JSON.NET
==================================================================
貼心小補充:
套件是安裝在專案底下,故若新建了一個新專案會需要再次下載。
Newtonsoft.Json,是處理Json格式的類別庫,包含最常使用的序列化和反序列化工具
什麼是反序列化?將JSON字串反序列化成物件
JsonConvert.DeserializeObject("字串"),<>中定義類別
什麼是序列化?將物件序列化成JSON字串
JsonConvert.SerializeObject(物件)
參考資料:
https://dotblogs.com.tw/berrynote/2016/08/18/200338
==================================================================
介接前應準備好的三件事情,你都準備好了嗎?
我們將於接下來幾天以實際例子幫助大家走過一遭
留言
追蹤
檢舉
上一篇
[ASP.NET]新增Web表單(網頁)實例+網頁畫面如何產生?(在伺服器中的處理流程)+工程師必須養成的良好命名習慣
下一篇
[ASP.NET]如何使用「開放資料(OpenData)」?+(第一篇,建立介接新類別的三種方法+了解JSON格式)
系列文
ASP.NETWebForm入門30天
共30篇
目錄
RSS系列文
訂閱系列文
69人訂閱
26
[ASP.NET]工具箱常用的伺服器控制項-Textbox(補充HTML5密碼驗證)
27
[ASP.NET]工具箱常用的伺服器控制項-CheckBox(全選的JS?)
28
[ASP.NET]新增泛型處理常式(.ashx)及瀏覽上傳圖片的範例
29
[ASP.NET]MasterPages主版頁面(上)
30
[ASP.NET]MasterPages主版頁面(下)+範例
完整目錄
尚未有邦友留言
立即登入留言
iT邦幫忙鐵人賽
參賽組數
1087組
團體組數
52組
累計文章數
20470篇
完賽人數
572人
鐵人賽最新文章
2021/12/12更新
予焦啦!一夢終須醒......
盤點清查與檢測掃描-資通安全健診
[13th][Day23]httpresponseheader(下)
[13th][Day22]httpresponseheader(上)
[13th][Day21]golangcontext
股票怎麼選?掌握這原則,你也能找到強勢股
Gitpush
盤點清查與檢測掃描-安全性檢測
完賽心得
前往鐵人賽
技術推廣專區
[Day2]抓取每日收盤價
[Day1]基本工具安裝
利用python取得永豐銀行API的Nonce
[Day03]tinyML開發板介紹
永豐金融API測試員
[Day01]在享受tinyML這道美食之前
[Day3]使用ta-lib製作指標
[Day4]函數打包與買進持有報酬率試算
計算API所需要的參數:HashID
計算API所需要的參數:IV
前往鐵人賽
熱門問題
公司想要客製化一套ERP系統該選擇軟體開發?套裝系統?還是自行設立部門?
PoE交換機可以直接相連嗎?
禁止員工連線使用Gmail與封鎖USBport的解法
遠端重開當機電腦的方法
軟體工程師會被監控嗎
訂房網站DB架構
SQL找出超過六個月的資料
請問前端Vue+後端Java,要用那個開發工具呢?另外測試及部署的步驟是那些呢(之前是用JQuery+Java,使用Eclipse開發)
想找PDF編輯工具,Adobe太貴了,請問還有其他推薦的替代方案嗎?
關於防火牆FortGate60C連外網速度無法到300M的問題
IT邦幫忙
站方公告
【2021iThome鐵人賽】登登登!究竟獎落誰家,2021iThome鐵人賽得獎名單正式揭曉
熱門tag
看更多
13th鐵人賽
12th鐵人賽
11th鐵人賽
鐵人賽
2019鐵人賽
2018鐵人賽
javascript
2017鐵人賽
windows
php
python
windowsserver
linux
c#
程式設計
資訊安全
css
vue.js
sql
分享
熱門回答
公司想要客製化一套ERP系統該選擇軟體開發?套裝系統?還是自行設立部門?
想找PDF編輯工具,Adobe太貴了,請問還有其他推薦的替代方案嗎?
SQL語法兩張表關聯其中一張表多筆重複資料取日期最大不用Groupby的方法
禁止員工連線使用Gmail與封鎖USBport的解法
軟體工程師會被監控嗎
請問前端Vue+後端Java,要用那個開發工具呢?另外測試及部署的步驟是那些呢(之前是用JQuery+Java,使用Eclipse開發)
遠端重開當機電腦的方法
PoE交換機可以直接相連嗎?
請問EXCEL如何在抓取網頁外部資料後並設定好自動更新,寫的程式可以在資料更新時自己動作?
(以解決)請問GMAIL群組.假如公司之前有業務群[email protected].有新職員收不到這個.如何把新業務加入
熱門文章
[13th][Day23]httpresponseheader(下)
強制存取控制環境中強制執行完整性
[13th][Day22]httpresponseheader(上)
第三隻狗勾
第四隻狗勾
[13th][Day21]golangcontext
自己在家接收來自飛機的ADS-B訊號!
使用UbuntuServer與Docker建立Gitea程式儲存庫
盤點清查與檢測掃描-資通安全健診
再增加五隻狗勾
一週點數排行
更多點數排行
海綿寶寶(antijava)
㊣浩瀚星空㊣(yoching)
居然解出來了(partyyaya)
japhenchen(japhenchen)
fillano(fillano)
raytracy(raytracy)
ccenjor(ccenjor)
小山丘(a243318490)
純真的人(jer5173)
rogeryao(rogeryao)
×
At
輸入對方的帳號或暱稱
Loading
找不到結果。
標記
{{result.label}}
{{result.account}}
關閉
延伸文章資訊
- 1什麼是開放資料? - The Open Data Handbook
Re-use and Redistribution / 重新使用與散播: 資料釋出時必須採用允許資料的重新使用和散播的授權聲明。並允許與其他資料混合使用。 Universal Participa...
- 2[ASP.NET] 如何使用「開放資料( Open Data ) 」? + (預備篇
「資料開放(Open Data)」是指任何人都可以自由使用、修改、分享的資料,而「政府資料開放(Open Government Data)」,則是將政府機關因業務需求所蒐集、保有、管理的資料, ...
- 3政府資訊公開法 - Open Data 聯盟
開放資料指的是資料可以被任何人自由使用,重複使用和散佈。在其限制上最多我們只能要求使用者標示資料來源與所有人。 開放資料最重要的精神: ...
- 4以URL存取資料 - 內政資料開放平臺|MOI Open Data
二、以URL存取資料. 開放資料可透過URL方式取得資料。 → https://od.moi.gov.tw/od/data/api/{dataOID}?$format={format}. ※ 參...
- 5開放資料- 维基百科,自由的百科全书