2008年6月23日 星期一

app engine顯示中文

目前正在練習寫google app engine
python真是個好玩又麻煩的東西
弱型別的缺點就是難以debug
今天在python顯示中文碰到奇妙的問題 浪費了我很多時間
##ReadMore##
我本來是在練習app engine上的範例 單純的顯示一個網頁
程式碼如下

class MainPage(webapp.RequestHandler):

def get(self):

self.response.headers['Content-Type'] = 'text/plain'#中文註解

self.response.out.write('你好阿')


def main():

application = webapp.WSGIApplication(

[('/', MainPage)],

debug=True)

wsgiref.handlers.CGIHandler().run(application)


if __name__ == "__main__":

main()

沒想到在本機上的python上跑完全沒問題 上傳到app engine後就變成只回傳以下這個訊息
Error: Server Error
The server encountered an error and could not complete your request.
If the problem persists, please report your problem and mention this error message and the query that caused it.
搞好久才發現 原來寫code裡如果有寫中文 那程式碼第一行要加上
#coding=utf-8
一定要加喔 如果沒加 連只有註解中有中文都會錯
臥槽泥媽 真是麻煩 浪費我很多時間解這個 一直以為是檔案本身編碼的問題 棍