TiddlyWeb的CORS预检支持
项目描述
为TiddlyWeb提供CORS预检支持的插件。
这是一个实验,功能有限。随着测试用例的增加,功能将增加。
要使用,请将‘tiddlywebplugins.cors’添加到tiddlywebconfig.py中的‘system_plugins’。
有几个可选的配置设置
如果‘cors.match_origin’为True,则Origin头的值将在简单请求中与Access-Control-Allow-Origin头的值相同。在非简单请求中,它总是匹配。如果为False,则在简单请求中的值为‘*’。
如果‘cors.allow_creds’为True,则Access-Control-Allow-Credentials头将发送一个值为‘true’的值,否则将不会发送。
如果设置了‘cors.exposed_headers’,它应该是一个表示头名称的字符串列表,这些头名称将被附加到默认的Access-Control-Expose-Headers: ETag。这个列表也用于设置默认的Access-Control-Allow-Headers。
如果‘cors.enable_non_simple’为True,则处理preflight OPTIONS请求。默认为False以避免意外暴露。
对于资源跨域PUT的认证,以下配置似乎是必需的
‘cors.enable_non_simple’: True, ‘cors.allow_creds’: True, ‘cors.match_origin’: True,
match_origin设置对于有效地处理OPTIONS预检请求是必需的。
待办事项
处理Access-Control-Request-Headers的黑名单/白名单。
与某人审计以确认这些内容是否“正确”。
重构两个中间件。它们有相当大的重叠。它可以变成一个同时操作在内部应用程序两端的中间件,但我发现这可能会令人困惑。
版权所有 2012,Chris Dent <cdent@peermore.com>
项目详情
tiddlywebplugins.cors-0.3.tar.gz 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 2b639ef8c3b148778ff98a5c599d828bac14442bec39ccb68fbf1cc0d0649cca |
|
MD5 | 79d213dee3fe6556665ea4dc88d8e67f |
|
BLAKE2b-256 | ae359394bd6603b5a1ffa4e9b1eed317a464714056bd741335e6e0e75d3c58c1 |