我一直试图解决这个问题大约两周。我可以在人们的文件夹中创建电子邮件项目,阅读文件夹,所有这些东西,但对于我的生活,我无法使用日历工作。
我可以提供我发送给WebDav的XML的示例,但希望有人在那里做过这个并有一个例子吗?
答案 0 :(得分:2)
几年前我在Java程序中这样做了,我这样做是为了将VCALENDAR文档放入文件夹中。一个怪癖是VCALENDAR必须包含在RFC822消息中。它是WebDAV,电子邮件和iCAL / VCAL的奇怪组合,但它当时在Link2Exchange上托管的Exchange 2003上运行。
我确信有一种更简单的方法,但这对我有用。下面我展示一个tcpdump数据包跟踪发生了什么。您应该在自己的Outlook / Entourage客户端上使用ngrep / tcpdump来查看它的功能。
请注意,“Cal2”是我的测试日历文件夹的名称。您可以使用“日历”作为主日历文件夹。
T 10.0.1.95:59741 -> 66.211.136.9:80 [AP]
PUT /exchange/yourname.domainname.com/Cal2/CC1.1163646061548.0.eml HTTP/1.1.
translate: f.
Content-Type: message/rfc822.
Pragma: no-cache.
Accept: */*.
Cache-Control: no-cache.
Authorization: Basic NOYOUCANTSEEMYPASSWORDYOUBASTARDS.
User-Agent: Jakarta Commons-HttpClient/2.0final.
Host: e1.exmx.net.
Cookie: sessionid=29486b50-d398-4f76-9604-8421950c7dcd:0x0.
Content-Length: 478.
Expect: 100-continue.
.
T 66.211.136.9:80 -> 10.0.1.95:59741 [AP]
HTTP/1.1 100 Continue.
.
T 10.0.1.95:59741 -> 66.211.136.9:80 [AP]
content-class: urn:content-classes:appointment.
Content-Type: text/calendar;.
.method=REQUEST;.
.charset="utf-8".
Content-Transfer-Encoding: 8bit.
.
BEGIN:VCALENDAR.
BEGIN:VEVENT.
UID:E1+1382+1014+495066799@I1+1382+1014+6+495066799.
SUMMARY:Voice Architecture Leads Meeting.
PRIORITY:5.
LOCATION:x44444 pc:6879.
DTSTART:20061122T193000Z.
DTEND:20061122T203000Z.
DTSTAMP:20061110T074856Z.
DESCRIPTION:this is a description.
SUMMARY:this is a summary.
END:VEVENT.
END:VCALENDAR.
T 66.211.136.9:80 -> 10.0.1.95:59741 [AP]
HTTP/1.1 201 Created.
Date: Thu, 16 Nov 2006 03:00:16 GMT.
Server: Microsoft-IIS/6.0.
X-Powered-By: ASP.NET.
MS-Exchange-Permanent-URL: http://e1.exmx.net/exchange/yourname.yourdomain.com/-FlatUrlSpace-/122cda661de1da48936f9
44bda4dde6e-3af8a8/122cda661de1da48936f944bda4dde6e-3f3383.
Location: http://e1.exmx.net/exchange/yourname.yourdomain.com/Cal2/CC1.1163646061548.0.eml.
Repl-UID: <rid:122cda661de1da48936f944bda4dde6e0000003f3383>.
Content-Type: text/html.
Content-Length: 110.
Allow: OPTIONS, TRACE, GET, HEAD, DELETE, PUT, COPY, MOVE, PROPFIND, PROPPATCH, SEARCH, SUBSCRIBE, UNSUBSCRIBE, PO
LL, BDELETE, BCOPY, BMOVE, BPROPPATCH, BPROPFIND, LOCK, UNLOCK.
ResourceTag: <rt:122cda661de1da48936f944bda4dde6e0000003f3383122cda661de1da48936f944bda4dde6e0000003f4671>.
GetETag: "122cda661de1da48936f944bda4dde6e0000003f4671".
MS-WebStorage: 6.5.7638.
Cache-Control: no-cache.
T 66.211.136.9:80 -> 10.0.1.95:59741 [AP]
<body><h1>/exchange/yourname.yourdomain.com/Cal2/CC1.1163646061548.0.eml was created successfully</h1></body>.
您可以使用像Cadaver这样的东西验证它是否有效,通过WebDAV查询对象的属性,如下所示:
dav:/exchange/yourname@yourdomain.com/Cal2/> propget CC1.1163646061548.0.eml
Fetching properties for `CC1.1163646061548.0.eml':
textdescription = this is a description
contentclass = urn:content-classes:appointment
supportedlock = <lockentry><locktype><transaction><groupoperation></groupoperation></transaction></locktype><locks
cope><local></local></lockscope></lockentry>
permanenturl = http://e1.exmx.net/exchange/yourname@yourdomain.com/-FlatUrlSpace-/122cda661de1da48936f944bda4dde6e-
3af8a8/122cda661de1da48936f944bda4dde6e-3f3383
getcontenttype = message/rfc822
id = AQEAAAAAOvioAQAAAAA/M4MAAAAA
mid = -8992774761696198655
uid = E1+1382+1014+495066799@I1+1382+1014+6+495066799
isfolder = 0
resourcetype =
method = PUBLISH
getetag = "122cda661de1da48936f944bda4dde6e0000003f4671"
lockdiscovery =
outlookmessageclass = IPM.Appointment
creationdate = 2006-11-16T03:00:16.549Z
outlookmessageclass = IPM.Appointment
creationdate = 2006-11-16T03:00:16.549Z
ntsecuritydescriptor = CAAEAAAAAAABAC+MMAAAAEwAAAAAAAAAFAAAAAIAHAABAAAAARAUAL8PHwABAQAAAAAABQcAAAABBQAAAAAABRUAAAC
nkePD6LEa8iIT/+gqDAAAAQUAAAAAAAUVAAAAp5Hjw+ixGvIiE//oAQIAAA==
dtstamp = 2006-11-10T07:48:56.000Z
lastmodified = 2006-11-16T03:00:16.565Z
dtstart = 2006-11-22T19:30:00.000Z
location = x44444 pc:6879
duration = 3600
htmldescription = <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<HTML>
<HEAD>
<META NAME="Generator" CONTENT="MS Exchange Server version 6.5.7638.1">
<TITLE>this is a summary</TITLE>
</HEAD>
<BODY>
<!-- Converted from text/plain format -->
<P><FONT SIZE=2>this is a description</FONT>
</P>
</BODY>
</HTML>
ishidden = 0
parentname = http://e1.exmx.net/exchange/yourname@yourdomain.com/Cal2/
meetingstatus = TENTATIVE
subject = this is a summary
getcontentlength = 631
normalizedsubject = this is a summary
isstructureddocument = 0
repl-uid = rid:122cda661de1da48936f944bda4dde6e0000003f3383
timezoneid = 0
displayname = CC1.1163646061548.0.eml
href = http://e1.exmx.net/exchange/yourname@yourdomain.com/Cal2/CC1.1163646061548.0.eml
nomodifyexceptions = 1
patternend = 2006-11-22T20:30:00.000Z
isreadonly = 0
instancetype = 0
uid = AQEAAAAAPzODAAAAAAAAAAAAAAAA
getlastmodified = 2006-11-16T03:00:16.565Z
created = 2006-11-16T03:00:16.549Z
sensitivity = 0
dtend = 2006-11-22T20:30:00.000Z
hasattachment = 0
iscollection = 0
read = 1
resourcetag = rt:122cda661de1da48936f944bda4dde6e0000003f3383122cda661de1da48936f944bda4dde6e0000003f4671
patternstart = 2006-11-22T19:30:00.000Z
priority = 0
sequence = 0
答案 1 :(得分:0)