我对使用瓶子很新,但每当我尝试运行程序时,我总会收到错误404:Not Found' /'。我的示例中的应用程序尚未完全正常运行,但它至少应该在屏幕上显示一些内容。即使有功能齐全的程序,也会发生提出了类似的问题,但没有一个解决方案有效。
import bottle
from cork import Cork
from cork.backends import SQLiteBackend
sb = SQLiteBackend('sasdasd.db', initialize=True)
aaa = Cork(backend=sb)
app = bottle.Bottle()
def post_get(name, default=''):
return bottle.request.POST.get(name, default).strip()
@bottle.route('/login')
def login():
return '''
<form action="/login" method="post">
Username: <input name="username" type="text" />
Password: <input name="password" type="password" />
<input value="Login" type="submit" />
</form>
'''
@bottle.post('/login')
def login():
"""Authenticate users"""
username = post_get('username')
password = post_get('password')
aaa.login(username, password, success_redirect='/', fail_redirect='/login')
bottle.run()
答案 0 :(得分:2)
正如@Wooble在他的评论中指出的那样,如果您希望您的webapp响应该路径的404以外的任何内容,则需要注册路由“/”。以下是一些代码来说明:
@bottle.get('/')
def home():
return 'Hello!'
现在,您的网络服务器将以HTTP 200和“Hello!”身体作出回应。当你要求/.
答案 1 :(得分:2)
我意识到OP已经回答了这个问题,但是我遇到了同样的问题。确保您的run
命令位于路由语句之后,而不是之前,或者您的所有内容都会出现404
错误。