我们正在研究Backbone.js应用程序,而且我们可以通过键入python -m SimpleHTTPServer
启动HTTP服务器这一事实非常棒。
我们希望能够将任何网址(例如localhost:8000/path/to/something
)发送到index.html
,以便我们可以使用HTML5 Backbone.Router
测试pushState
。
实现这一目标最无痛苦的方法是什么? (出于快速原型制作的目的)
答案 0 :(得分:2)
只需使用BaseHTTPServer
import BaseHTTPServer
class Handler( BaseHTTPServer.BaseHTTPRequestHandler ):
def do_GET( self ):
self.send_response(200)
self.send_header( 'Content-type', 'text/html' )
self.end_headers()
self.wfile.write( open('index.html').read() )
httpd = BaseHTTPServer.HTTPServer( ('127.0.0.1', 8000), Handler )
httpd.serve_forever()
答案 1 :(得分:1)
下载并安装CherryPy
创建以下python脚本(称之为always_index.py
或类似的东西)并将'c:\ index.html'替换为您要使用的实际文件的路径
import cherrypy
class Root:
def __init__(self, content):
self.content = content
def default(self, *args):
return self.content
default.exposed = True
cherrypy.quickstart(Root(open('c:\index.html', 'r').read()))
python <path\to\always_index.py>
http://localhost:8080
,无论您要求的是哪个网址,都可以获得相同的内容。