内省¶
Datasette 包含一些页面和 JSON API 端点,用于内省当前实例。这些可以用于理解 Datasette 的一些内部机制,并查看特定实例是如何配置的。
这些页面都可以在你的浏览器中查看。添加 .json
到 URL,以 JSON 格式获取内容。
/-/metadata¶
显示 metadata.json
文件的内容,该文件传递给了 datasette serve
(如果有的话)。元数据示例
{
"license": "CC Attribution 4.0 License",
"license_url": "http://creativecommons.org/licenses/by/4.0/",
"source": "fivethirtyeight/data on GitHub",
"source_url": "https://github.com/fivethirtyeight/data",
"title": "Five Thirty Eight",
"databases": {
}
}
/-/versions¶
显示 Datasette, Python 和 SQLite 的版本。版本示例
{
"datasette": {
"version": "0.60"
},
"python": {
"full": "3.8.12 (default, Dec 21 2021, 10:45:09) \n[GCC 10.2.1 20210110]",
"version": "3.8.12"
},
"sqlite": {
"extensions": {
"json1": null
},
"fts_versions": [
"FTS5",
"FTS4",
"FTS3"
],
"compile_options": [
"COMPILER=gcc-6.3.0 20170516",
"ENABLE_FTS3",
"ENABLE_FTS4",
"ENABLE_FTS5",
"ENABLE_JSON1",
"ENABLE_RTREE",
"THREADSAFE=1"
],
"version": "3.37.0"
}
}
/-/plugins¶
显示当前已安装插件及其版本的列表。插件示例
[
{
"name": "datasette_cluster_map",
"static": true,
"templates": false,
"version": "0.10",
"hooks": ["extra_css_urls", "extra_js_urls", "extra_body_script"]
}
]
添加 ?all=1
以包含 Datasette 内置默认插件的详细信息。
/-/settings¶
{
"default_facet_size": 30,
"default_page_size": 100,
"facet_suggest_time_limit_ms": 50,
"facet_time_limit_ms": 1000,
"max_returned_rows": 1000,
"sql_time_limit_ms": 1000
}
/-/databases¶
显示当前附加的数据库。数据库示例
[
{
"hash": null,
"is_memory": false,
"is_mutable": true,
"name": "fixtures",
"path": "fixtures.db",
"size": 225280
}
]
/-/threads¶
显示线程和 asyncio
任务的详细信息。线程示例
{
"num_threads": 2,
"threads": [
{
"daemon": false,
"ident": 4759197120,
"name": "MainThread"
},
{
"daemon": true,
"ident": 123145319682048,
"name": "Thread-1"
},
],
"num_tasks": 3,
"tasks": [
"<Task pending coro=<RequestResponseCycle.run_asgi() running at uvicorn/protocols/http/httptools_impl.py:385> cb=[set.discard()]>",
"<Task pending coro=<Server.serve() running at uvicorn/main.py:361> wait_for=<Future pending cb=[<TaskWakeupMethWrapper object at 0x10365c3d0>()]> cb=[run_until_complete.<locals>.<lambda>()]>",
"<Task pending coro=<LifespanOn.main() running at uvicorn/lifespan/on.py:48> wait_for=<Future pending cb=[<TaskWakeupMethWrapper object at 0x10364f050>()]>>"
]
}
/-/actor¶
显示当前已认证的 actor。对于调试 Datasette 认证插件很有用。
{
"actor": {
"id": 1,
"username": "some-user"
}
}
/-/messages¶
位于 /-/messages
的调试工具可用于设置闪烁消息以试用该功能。请参阅 .add_message(request, message, type=datasette.INFO) 查看此功能的详细信息。