我在python中运行了以下hello world代码,但localhost:8080不会打印任何内容
我正在使用ubuntu 12.04
localhost:8080显示空白页
helloworld.py
import webapp2
class MainPage(webapp2.RequestHandler):
def get(self):
self.response.headers['Content-Type'] = 'text/plain'
self.response.write('Hello, World!')
application = webapp2.WSGIApplication([
('/', MainPage),
], debug=True)
的app.yaml
application: your-app-id
version: 1
runtime: python27
api_version: 1
threadsafe: true
handlers:
- url: /.*
script: helloworld.application
输出如下
kiran@kiru-Lenovo-G480:~/google$ dev_appserver.py helloworld/
INFO 2013-10-09 12:22:03,559 sdk_update_checker.py:245] Checking for updates to the SDK.
INFO 2013-10-09 12:22:03,565 __init__.py:94] Connecting through tunnel to: appengine.google.com:443
INFO 2013-10-09 12:22:03,571 sdk_update_checker.py:261] Update check failed: <urlopen error Tunnel connection failed: 407 Proxy Authentication Required>
INFO 2013-10-09 12:22:03,595 api_server.py:138] Starting API server at: http://localhost:44748
INFO 2013-10-09 12:22:03,610 dispatcher.py:168] Starting module "default" running at: http://localhost:8080
INFO 2013-10-09 12:22:03,614 admin_server.py:117] Starting admin server at: http://localhost:8000
答案 0 :(得分:0)
您直接在write
对象上调用Response
。你会想做这样的事情:
self.response.out.write('Hello, World!')
答案 1 :(得分:0)
您的代码似乎没有任何问题。事实上GAE运行没有错误,并且在浏览器中也没有显示任何错误,这让我觉得它可能是一个浏览器/显示问题。试试这两件事:
尝试使用正确的html文件而不是文本进行响应:
self.response.write(template.render(tvalues))
答案 2 :(得分:0)
嗯,你真的不需要看错,因为执行得很好。 问题是代码缩进。 即 导入webapp2: class MainHandler(webapp2.RequestHandler): def get(self): self.response.write(&#39; Hello World&#39;) app = webapp2.WSGIApplication([(&#39; /&#39;,MainHandler)],debug = True)
应该与类具有相同的缩进而不是def