Delphi APP 開發入門(十)REST Client 開發

閲讀次數:3116 發表時間:2014/08/27

Delphi APP 開發入門(九)拍照與分享 << 前情

Delphi在XE5開始就提供了REST Client的元件,讓開發REST Client應用的開發者能在最短的時間開發出相關的應用,今天就利用臺北市政府資料開放平台中的資料來做一個簡單的範例「台北住宿通」。

首先,我們先到臺北市政府資料開放平台來找尋我們想要的資料。找到了臺北市旅館資料庫後,我們把新版資料介接後的網址(http://data.taipei.gov.tw/opendata/apply/query/NDQxOEM2MDAtRDdGNS00NkQ2LUJCMUYtMURBMjlEQUI5MUU5?$format=json) 複製下來。
接著回到Delphi,開啟新專案,我們將REST Client的幾個元件佈置上去,分別是TRESTClient、TRESTRequest、TRESTResponse與TRESTResponseDataSetAdapter。

另外為了要讓資料顯示出來,我們在畫面上新增ClientDataSet以及ListView,最後佈置畫面如下。

接下來我們要設定RESTClient及RESTReponseDataSetAdapter的屬性。

RESTClient的BASEURL貼上臺北市旅館資料庫的連結網址。

RESTResponseDataSetAdapter的屬性

DataSet: ClientDataSet1

Reponse: RESTResponse1

設定完成後,在RESTRequest1按右鍵,點選Execute後,如果成功取回資料會出現OK訊息。

開啟Tools→REST Debugger工具,將URLs貼上連結後,按下Send Request。

接著點選下面的body,來看看取得的json有那些資料,往下拉之後可以看到sTitle為旅館名稱。

接下來開啟View→LiveBindings Designer

將ClientDataset中的sTitle拖拉到ListView的Item.text。就完成了!

寫到這裡看起來完成了!不過只顯示旅館名稱有點掉漆,Listview可以多顯示點東西嗎?答案是可以的!但要先安裝沒有預設安裝的元件。

在 C:\Users\Public\Documents\Embarcadero\Studio\14.0\Samples\Object Pascal\Mobile Samples\User Interface\ListView 藏有二個元件,我們先將程式存檔後,依序打開二個 .dpk的元件後,按右鍵Install安裝。

另外,別忘了在Tools→Options→Library中的Library Path加上路徑。

安裝完後,我們再開啟程式。點選ListView,開啟ItemApperarance的ItemAppearance屬性,我們看到出現了一個MultiDetailItem,點選它。

接著開啟LiveBinding Designer功能,看到多了幾個Detail,在這邊我們就把cat2(分類)、sAddr(地址)、memo_tel(電話)連結到明細裡。

這樣看起來就更專業了!接著大家可以發揮創意,結合之前教過的Google Map功能讓它顯示出來囉!

GitHub 程式下載 https://github.com/superlevin/XE6RestClientDemo

Delphi APP 開發入門(十)REST Client 開發的更多相关文章

  1. Delphi APP 開發入門(五)GPS 定位功能

    Delphi APP 開發入門(五)GPS 定位功能 分享: Share on facebookShare on twitterShare on google_plusone_share   閲讀次數 ...

  2. Delphi APP 開發入門(九)拍照與分享

    Delphi APP 開發入門(九)拍照與分享 分享: Share on facebookShare on twitterShare on google_plusone_share   閲讀次數:30 ...

  3. Delphi APP 開發入門(八)SQLite資料庫

    Delphi APP 開發入門(八)SQLite資料庫 分享: Share on facebookShare on twitterShare on google_plusone_share   閲讀次 ...

  4. Delphi APP 開發入門(七)通知與雲端推播

    Delphi APP 開發入門(七)通知與雲端推播 分享: Share on facebookShare on twitterShare on google_plusone_share   閲讀次數: ...

  5. Delphi APP 開發入門(四)簡易手電筒

    Delphi APP 開發入門(四)簡易手電筒 分享: Share on facebookShare on twitterShare on google_plusone_share   閲讀次數:32 ...

  6. Delphi APP 開發入門(六)Object Pascal 語法初探

    Delphi APP 開發入門(六)Object Pascal 語法初探 分享: Share on facebookShare on twitterShare on google_plusone_sh ...

  7. Delphi APP 開發入門(三)簡易計算機

    Delphi APP 開發入門(三)簡易計算機 分享: Share on facebookShare on twitterShare on google_plusone_share   閲讀次數:68 ...

  8. Delphi APP 開發入門(二)Android/iOS設定,Hello World

    Delphi APP 開發入門(二)Android/iOS設定,Hello World 分享: Share on facebookShare on twitterShare on google_plu ...

  9. Delphi APP 開發入門(一)重生的 Delphi

    Delphi APP 開發入門(一)重生的 Delphi 分享: Share on facebookShare on twitterShare on google_plusone_share   閲讀 ...

随机推荐

  1. 【BZOJ】1624: [Usaco2008 Open] Clear And Present Danger 寻宝之路(floyd)

    http://www.lydsy.com/JudgeOnline/problem.php?id=1624 一开始我打算一个个最短路................................. 然 ...

  2. GitHub搭建个人网站续

    来源:http://www.cnblogs.com/crazyacking/p/4678976.html http://www.cnblogs.com/crazyacking/category/716 ...

  3. v8随心记

    因为node原因,研究v8已经有段时间了,但是一直也没有抽空写点什么,现在想想有好多当时清晰的东西又模糊了.哎,伤心的很啊.但是一时又想不起什么章法,所以只能随手胡乱写了. 下载.编译: https: ...

  4. Hadoop1.2.1 启停的Shell 脚本分析

    停止shell脚本以此类推.

  5. 第二篇:CUDA 并行编程简介

    前言 并行就是让计算中相同或不同阶段的各个处理同时进行. 目前有很多种实现并行的手段,如多核处理器,分布式系统等,而本专题的文章将主要介绍使用 GPU 实现并行的方法. 参考本专题文章前请务必搭建好 ...

  6. android studio升级时提示 Connection failed. Please check your network connection and try again

    原文地址 http://www.eyeapk.com/android-studio-update.html Mac OSX中修改文件路径为 bin/idea.vmoptions ,添加如下内容,如果无 ...

  7. asfd

    $$\sum_{i=1}^n a_i=0$$$$f(x)=x^{x^x}$$

  8. java开源模板引擎

      Velocity  Velocity是一个基于java的模板引擎(template engine).它允许任何人仅仅简单的使用模板语言(template language)来引用由java代码定义 ...

  9. Cgroups子系统介绍

    blkio -- 这个子系统为块设备设定输入/输出限制,比如物理设备(磁盘,固态硬盘,USB 等等). cpu -- 这个子系统使用调度程序提供对 CPU 的 cgroup 任务访问. cpuacct ...

  10. 《Django By Example》第十二章(终章) 中文 翻译 (个人学习,渣翻)

    书籍出处:https://www.packtpub.com/web-development/django-example 原作者:Antonio Melé (译者注:第十二章,全书最后一章,终于到这章 ...