.......未完待續先存檔........ ''' Hello World! ''' 安裝完Python以及Google App Engine的執行環境之後,我們先來寫一個簡單的Hello World Web應用程式,在本機上執行體驗一下Google App Engine的執行結果,並了解如何編譯、執行Google App Engine的程式碼。 基本上,在安裝完Google App Engine SDK後,在其安裝目錄內會有一個 demo 的資料夾,底下還有一個 guestbook 資料夾,裡面則是一個簡單且基本的範例程式。 不過在這邊還是先介紹更簡單的 Hello World程式來當做第一個體驗Google App Engine的程式。 [[BR]][[BR]] 首先先在Google App Enigne的安裝目錄(Windows 平台預設為C:\Program Files\Google\google_appengine;Linux平台則為使用者自行解縮縮後的目徑;Mac OS X 平台則毋需擔心此問題,可用 GoogleAppEngineLauncher 直接測試) 下先新增一個文字檔取名為 hello.py,接著編輯hello.py加入以下幾行字*並存檔。 {{{ print 'Content-Type: text/plain' print 'Hello, world!' }}} ''*hello.py範例程式節錄自Google App Engine。基本上只要 print 'Hello, world!' 這段程式碼即可正常執行,第一行的 print 'Content-Type: text/plain' 用意僅在metadata的宣告,不加入亦可正常執行。''[[BR]][[BR]][[BR]] 接下來我們再新增一個文字檔取名為app.yaml,這是一個設定檔且檔案名稱是固定的,請不要隨意更換名稱避免造成無法編譯的錯誤。當我們下指令編譯hello.py或者任何一個我們要開發的Google App Engine Web應用程式時,Google App Engine都會先讀取這個檔案內容來取得相關的資訊:應用程式名稱、應用程式版本編號、執行環境、API版本編號以及handler程式檔案目錄等等。 接下來我們先在app.yaml這個檔加入以下的內容。 {{{ application: helloworld version: 1 runtime: python api_version: 1 handlers: - url: /.* script: hello.py }}} 首先application就是指我們所開發的Google App Engine Web應用程式名稱,這裡先暫定為helloworld;因為application名稱必須和上載到Google appspot網站上的Web應用程式帳號名稱一致才行,否則會有錯誤的情形發生,不過目前我們僅先在本機測試,因此將會把這個問題留到後面章節來討論。 version則是指這個應用程式的版本;runtime則是指我們用來開發這個Google Ap Engine Web應用程式的所使用的執行環境,預設當然就是Google目前唯一使用的Python語言;api_version則是 Google App Engine 所提供的API版本,目前版本為1.x,我們只要填入1即可。 最後就是handlers這個參數,這是在指定當Google App Engine接收到來自使用者的request時,該由哪一個script程式來回復;這部分我們會在第三節有更詳細的說明,在這邊讀者只要知道Google App Engine會執行 hello.py 這個script檔來處理來自使用者端的request。 [[BR]][[BR]] 以上兩個程式存檔後,就要來在本機上作測試了。 [[BR]][[BR]] 接著打開終端機介面**,切換工作目錄到 Google App Engine 預設的安裝路徑下,直接下 dev_appserver.py . 即可。 dev_appserver.py 這個程式的目的為在本機上測試使用者所開發的 Google App Engine 專案,指令後面接的參數為所要測試的專案所在路徑,由於目前的 helloworld 範例和 dev_server.py 檔所在目錄相同,因此只要設定為代表目前目錄的 . 即可。 [[BR]][[BR]] ''** Windows平台請到 開始工作列 > 執行 > 下 cmd 指令 即可。'' * Windows 平台 {{{ C:\Program Files\Google\google_appengine> dev_appserver.py . }}} 執行後當出現下列的執行結果表示已經正常在本機上執行成功。 [[BR]][[BR]] [[Image(helloworld_001.jpg)]] 使用者可以打開瀏覽器輸入 http://localhost:8080/ 來檢視執行的結果。 [[BR]][[BR]] [[Image(helloworld_002.jpg)]] * Linux 平台[[BR]] Linux平台上與 Windows平台唯一不同點僅差在啟動 dev_server.py 程式時,由於工作目錄與 dev_appserver.py 所在目錄相同,因此需要指定目前目錄 . ,否則會出現找不到指令的錯誤。 [[BR]] {{{ user@localhost:~/google_appengine$ ./dev_appserver.py . }}} 得到成功的執行結果後一樣可以打開瀏覽器輸入 http://localhost:8080/ 來檢視執行的結果。 [[BR]][[BR]] * Mac OS X 平台[[BR]]