Gallery: 模块:webdav:开发(devel):修订间差异
来自站长百科
Firebrance(讨论 | 贡献) 无编辑摘要 |
Firebrance(讨论 | 贡献) 无编辑摘要 |
||
第7行: | 第7行: | ||
=== 备忘 === | === 备忘 === | ||
* | * 在Windows中支持文件的保存:http://gallery.menalto.com/node/66332 | ||
* | * 我们的WebDAV模块或WebDAV客户端需要支持100 Continue状态吗?麻烦处在上传大文件时,在文件传输完成之前不会被要求用户名和密码。 | ||
* Mac OS X mime- | * Mac OS X mime-type的问题: http://thread.gmane.org/gmane.comp.web.gallery.devel/3817 | ||
* | * 使用bare w/登入Address Windows的问题。Bug #1694541 | ||
* | * 可能向WebDAV URL添加活动用户名,针对OS X? | ||
* | * 支持禁用mod_dav或至少能够测试mod_dav是否为活动状态?http://thread.gmane.org/gmane.comp.apache.user/67706 bug #1736862 | ||
* | * 如WebDAV 检查失败的话,使用WebDAV区块显示警告,至少管理员用户可以看到此警告。 | ||
* | * ItemEditWebDav在错误时无法设定正确的应答状态。 | ||
** | ** 我们可以停止使用put_response_helper,不过它的支持范围挺大。或者我们可以在WebDav.inc中强制设定错误时显示500 内部服务器错误,只要我们不在ItemEditWebDav.inc设定特定应答代码即可。 | ||
* | * 如果安装了quota模块,则支持RFC 4331。 | ||
** Mac OS | ** Mac OS X客户端需要这些属性。较简单的实现方法就是使用GalleryQuotasHelper::getUserDiskQuota 和GalleryQuotasHelper::getUserDiskUsage。但它们最终还是需要自己的API,如RewriteApi或HttpAuthInterface。Gallery目前偏好于使用QuotaInterface_1_0。抑或是GalleryQuotaInterface_1_0?如果某个模块使用Gallery前缀,其类别可能会与核心模块中的某个类别产生冲突。但若不使用Gallery前缀的话,又可能会与某嵌入应用程序中某个类别发生冲突。 | ||
* | * 这是一个不错的有关WebDAV的指导:http://plone.org/documentation/how-to/webdav | ||
* <strike>Fix permissions necessary to replace a resource. Bug #1686922</strike> | * <strike>Fix permissions necessary to replace a resource. Bug #1686922</strike> | ||
* <strike>Support changing entities' class. Bug #1681406, review #167, review #176</strike> | * <strike>Support changing entities' class. Bug #1681406, review #167, review #176</strike> | ||
* <strike>Add config check for all WebDAV methods.</strike> | * <strike>Add config check for all WebDAV methods.</strike> | ||
* | * 一旦litmus的''move_coll''ection bug被修复,就会再次测试[http://www.webdav.org/neon/litmus/ litmus](目前测试中使用COPY而不是MOVE) | ||
* | * 一旦我们支持COPY就会再次测试litmus | ||
* | * 一旦 PROP测试可配置就会再次测试litmus(目前它会写至某个我们不支持的命名空间) | ||
* Bug: | * Bug: 如DELETE请求包括某个URL片断就会失败 | ||
* Bug: RFC 4918 6.1: | * Bug: RFC 4918 6.1: | ||
如果某请求导致任何lock的lock-root变为某个未经映射的URL的话,那么lock就必须为该请求所删除。 | |||
* Bug: RFC 4918 6.4: | * Bug: RFC 4918 6.4: | ||
某lock的创建者具有特权来使用lock进行源的修改。当某个被lock的源被修改时,服务器就必须检查经授权的原则是否符合lock创建者(还有有效lock记号的提交)。 | |||
* Bug: | * Bug: 添加对Lock-null resource (LNR)的支持。请参见 [http://www.webdav.org/specs/rfc2518.html#rfc.section.7.4 RFC 2518 7.4]和[http://www.webdav.org/specs/rfc4918.html#lock-null Details from RFC4918 about the behavior of the now deprecated LNR]。 | ||
** | ** 但请注意[http://greenbytes.de/tech/webdav/draft-reschke-webdav-locking-latest.html#rfc.section.B.1.2 LNRs 貌似不被任何已发布的/非正式的WebDAV客户端所使用] | ||
* | * 添加对[http://www.webdav.org/specs/rfc4918.html#lock-unmapped-urls RFC4918中lock-unmappped URL]的支持。 | ||
* Bug: | * Bug: 使用相对URL的check_locks | ||
* | * 库或帮助类别应为423 Locked 应答状态生成错误应答主体。 | ||
=== copy === | === copy === |
2008年11月6日 (四) 16:37的版本
测试
备忘
- 在Windows中支持文件的保存:http://gallery.menalto.com/node/66332
- 我们的WebDAV模块或WebDAV客户端需要支持100 Continue状态吗?麻烦处在上传大文件时,在文件传输完成之前不会被要求用户名和密码。
- Mac OS X mime-type的问题: http://thread.gmane.org/gmane.comp.web.gallery.devel/3817
- 使用bare w/登入Address Windows的问题。Bug #1694541
- 可能向WebDAV URL添加活动用户名,针对OS X?
- 支持禁用mod_dav或至少能够测试mod_dav是否为活动状态?http://thread.gmane.org/gmane.comp.apache.user/67706 bug #1736862
- 如WebDAV 检查失败的话,使用WebDAV区块显示警告,至少管理员用户可以看到此警告。
- ItemEditWebDav在错误时无法设定正确的应答状态。
- 我们可以停止使用put_response_helper,不过它的支持范围挺大。或者我们可以在WebDav.inc中强制设定错误时显示500 内部服务器错误,只要我们不在ItemEditWebDav.inc设定特定应答代码即可。
- 如果安装了quota模块,则支持RFC 4331。
- Mac OS X客户端需要这些属性。较简单的实现方法就是使用GalleryQuotasHelper::getUserDiskQuota 和GalleryQuotasHelper::getUserDiskUsage。但它们最终还是需要自己的API,如RewriteApi或HttpAuthInterface。Gallery目前偏好于使用QuotaInterface_1_0。抑或是GalleryQuotaInterface_1_0?如果某个模块使用Gallery前缀,其类别可能会与核心模块中的某个类别产生冲突。但若不使用Gallery前缀的话,又可能会与某嵌入应用程序中某个类别发生冲突。
- 这是一个不错的有关WebDAV的指导:http://plone.org/documentation/how-to/webdav
Fix permissions necessary to replace a resource. Bug #1686922Support changing entities' class. Bug #1681406, review #167, review #176Add config check for all WebDAV methods.- 一旦litmus的move_collection bug被修复,就会再次测试litmus(目前测试中使用COPY而不是MOVE)
- 一旦我们支持COPY就会再次测试litmus
- 一旦 PROP测试可配置就会再次测试litmus(目前它会写至某个我们不支持的命名空间)
- Bug: 如DELETE请求包括某个URL片断就会失败
- Bug: RFC 4918 6.1:
如果某请求导致任何lock的lock-root变为某个未经映射的URL的话,那么lock就必须为该请求所删除。
- Bug: RFC 4918 6.4:
某lock的创建者具有特权来使用lock进行源的修改。当某个被lock的源被修改时,服务器就必须检查经授权的原则是否符合lock创建者(还有有效lock记号的提交)。
- Bug: 添加对Lock-null resource (LNR)的支持。请参见 RFC 2518 7.4和Details from RFC4918 about the behavior of the now deprecated LNR。
- 添加对RFC4918中lock-unmappped URL的支持。
- Bug: 使用相对URL的check_locks
- 库或帮助类别应为423 Locked 应答状态生成错误应答主体。
copy
$entity->copy的实现不会太困难:
$entity->setId(getUniqueId()); $entity->setPersistentFlag(STORAGE_FLAG_NEWLY_CREATED);