Ven*_*kat 8 asp.net sharepoint webdav ms-office
以下是我们的设置和要求:
自定义WebDAV实现是最好的方法吗?请注意,我们可能不需要WebDAV的所有功能来支持上述要求.你知道任何替代方案吗?
如果要实现自定义WebDAV实现,除了http://www.webdav.org/之外,您能否推荐一些好的资源(商业/开源IIS插件,.Net,docs等样本)?顺便说一句,我不喜欢安装像Sharepoint这样庞大的CMS来支持这么小的要求!
我在SO上发现了一个关于自定义WebDav实现的线程:您在实现/使用WebDAV方面有什么经验? 这听起来很令人沮丧:((仅在IIS根目录上可用,需要Windows身份验证等)
提前致谢!
我最近开发了一个使用Apache Tomcat WebdavServlet作为基础的简单Webdav服务器.我刚刚从SVN获得了源代码(见下文)并对其进行了修改以满足我的需求.您可以将代码添加到其中的不同方法:
doGet
doLock
doPut
doUnlock
etc...
Run Code Online (Sandbox Code Playgroud)
我在企业CMS前面使用它作为一个可怜的mans webdav,因此在每个方法中我添加了API调用来获取文档,锁定它,版本或其他任何东西.基本上他们不想从供应商那里购买webdav产品,Tomcat是免费的.
至于在客户端上打开Office文件,您可能需要依赖Office安装附带的库(至少从Office XP开始).请注意,该组件称为SharePoint blah blah,但它不需要在任何地方安装SharePoint.我在这里有一个js片段,以图书馆为例,显然你会修改以满足你的需求.我意识到你说没有ActiveX,但没有它我不是100%肯定你将如何打开链接.欢迎您尝试其他方式.
function webedit(id) {
if (window.ActiveXObject) {
var ed;
try {
//Office 2003
ed = new ActiveXObject('SharePoint.OpenDocuments.2');
} catch (err1) {
try {
//Office 2000/XP
ed = new ActiveXObject('SharePoint.OpenDocuments.1');
} catch (err2) {
try {
//Office 2007
ed = new ActiveXObject('SharePoint.OpenDocuments.3');
} catch (err3) {
window.alert('Unable to create an ActiveX object to open the document. This is most likely because of the security settings for your browser.');
return false;
}
}
}
if (ed) {
ed.EditDocument('<%=webdavPath%>/webdav/'+id);
return false;
} else {
window.alert('Cannot instantiate the required ActiveX control to open the document. This is most likely because you do not have Office installed or you have an older version of Office.');
return false;
}
} else {
window.alert('Internet Explorer is required to use this feature.');
}
return false;
}
Run Code Online (Sandbox Code Playgroud)
我也意识到你的服务器是IIS而不是基于Apache的,但是你可以随时使用IIS进行Tomcat安装(这就是我们的工作)并使用JK ISAPI过滤器而不是AJP.无论如何,这是一种做事方式,不需要你购买任何东西.
SVN来源:http://svn.apache.org/repos/asf/tomcat/tc6.0.x/trunk/java/org/apache/catalina/servlets/WebdavServlet.java
WebDAV 有什么问题?有几个第三方 WebDAV 服务器组件,您可以将它们插入服务器端应用程序(www.webdavsystem.com,我们的WebDAVBlackbox)。
或者,您可以在客户端上创建一个虚拟文件系统,该系统将使用其他协议与服务器进行通信(如果您更容易实现这种处理方式,则可以使用纯 HTTP,或者使用 FTP 或 SFTP)。
| 归档时间: |
|
| 查看次数: |
12755 次 |
| 最近记录: |