0

每当我发出 POST 请求时,我都试图获得一个事件。这是代码:

from eve import Eve

def before_insert(response):
print 'About to return artists'

app = Eve(settings='settings.py')
app.on_insert += before_insert

if __name__ == '__main__':
    app.run()

我在设置文件中没有代码来容纳这些事件 - 只有当我删除该行时可以正常工作的标准东西:app.on_insert += before_insert

当我做一个 POST 我得到:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<title>500 Internal Server Error</title>
<h1>Internal Server Error</h1>
<p>The server encountered an internal error and was unable to complete your request.  Either the server is overloaded or there is an error in the application.</p>

当我对资源执行 GET 操作时,我获取了数据,但尚未添加 POST ......

废话??

4

1 回答 1

1

看起来您的回调函数的签名错误。试试下面的。

from eve import Eve

def before_insert(resource_name, items):
    print 'About to return artists'

app = Eve(settings='settings.py')
app.on_insert += before_insert

if __name__ == '__main__':
    app.run(debug=True)

在任何情况下,请尝试DEBUG = True在您的设置文件中运行应用程序,或使用 运行它app.run(debug=True),这样您就可以获得有关实际问题的提示。

于 2014-04-20T07:45:50.413 回答