问题标签 [exchangewebservices]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
689 浏览

web-services - 无论 SOAP 服务器配置如何,都可以在传出 SOAP 请求(信封)中使用 xpath 吗?

我试图弄清楚两件事:

  1. 可以使用 Xpath 查询基于 SOAP 的 Web 服务服务器吗?

  2. 这是否内置在 SOAP 协议中,这样任何好的 SOAP 服务器都可以正确处理请求,而无需添加对 XPath 查询的自定义处理?

这两个问题似乎是多余的,但我打破它们是因为:

  1. 我不知道我的想法是否有意义/是否正确使用 XPath,

  2. 如果它确实有意义,它是否已经是 SOAP 协议的一个被理解的特性(因此可以解释为什么我找不到我实际处理的 Web 服务的任何特定文档。)

如果有帮助,这是现实世界的场景:

我有一个日历数据库(非常简单,MySQL),我想通过 EWS 更新我的 MS Exchange 日历。每当我将事件从数据库推送到日历时,有两件事是正确的:

  1. 日期范围将始终相同(从一周的开始到推送发生的一周结束)。

  2. 每个事件的 UID 都会有一个指示符,表明它是由这个特定的应用程序发出的。

因此,在将任何事件推送到日历之前,我想删除该日期范围内的所有事件,并在 UID 中有应用程序指示器,这样我就不会得到双倍的日历项目,或者更糟糕的是,旧的我日历上不再正确的项目。

由于我无法找到正确的方法来在一个请求中执行这样的查询/删除/添加所有操作,因此我认为 XPath 是一种不太专有的解决方案。但我什至不确定 XPath 查询将在哪里修改为请求,或者即使最好的 xml 解析器会得出预期的目标。

抱歉,这比我的意思要啰嗦。简短版本:我可以在 SOAP 请求中使用 XPath 吗?如果是这样,怎么做?

0 投票
2 回答
1819 浏览

c# - 通过 EWS 设置的到期日期在提醒弹出窗口中是错误的

我在将 EWS 用于任务和提醒(特别是截止日期)时遇到了一些问题。

当我运行我的代码时,如下所示,该任务被添加到我的交换帐户中,我可以在 Outlook 中看到它。里面的所有数据看起来也不错。但是,如果我指定对任务进行提醒,它显示的截止日期是非常错误的。

通常是未来 17 小时,但我提供的屏幕截图显示它是未来 19 小时。我觉得很奇怪,如果我打开任务,截止日期看起来不错,但提醒说它应该在未来很长一段时间内到期。有任何想法吗?

截图:http ://s970.photobucket.com/albums/ae187/paulehn/?action=view¤t=ewstask.jpg

0 投票
3 回答
312 浏览

c# - 是否可以编写如下 C# 代码并使用不同国家的网络发送电子邮件?

是否可以编写如下 C# 代码并在不同国家/地区使用 mnetwork 发送电子邮件?

它是一个 Web 服务 URL。当我从家庭网络,我朋友的家庭网络在任何地方运行相同的代码时,这很有效,但是当我从我的客户在哥伦比亚的位置运行它时,它会失败。

我在该 Exchange Server 上有一个有效的用户名和密码。我可以设置任何配置来实现这一点吗?

顺便说一句,当我在办公室网络和任何家庭网络中的任何网络中运行它时,下面的代码都有效。我至少在德克萨斯州普莱诺的五个朋友网络中尝试过。我希望这段代码可以从另一个国家的任何网络运行。

我在哥伦比亚的客户可以使用浏览器使用相同的用户名和密码连接到 Web 服务,但是当我运行上面的代码时,它无法连接到我们的 Web 服务。

0 投票
1 回答
36206 浏览

exchange-server - 从 Exchange 电子邮件地址获取自动发现 URL

我从 Exchange 2007 服务器的地址开始:

我试图发送一个自动发现请求,如MSDN中所述。

我尝试使用TechNet 白皮书中记录的通用自动发现地址。

因此,curl在 PHP 上使用时,我发送了以下请求:

到以下网址:

但没有得到回应,只是最终超时。

我也试过:

结果相同。

现在,由于我的更大目标是将自动发现与 Exchange Web 服务一起使用,并且由于所有 EWS URL 通常使用与 Outlook Web Access 地址相同的子域,我想我会看看自动发现 URL 是否也是如此. 由于 OWA URL 是:

我试过了:

果然,我得到了预期的回应。

但是,我只知道 OWA 子域,因为它是我可以访问的服务器,并且我正在使用它来测试所有内容。如果这是一个实时应用程序并且用户正在输入他们自己的 Exchange 电子邮件,我将无法确定或猜到它。

我知道自动发现设置必须在不知道 OWA URL 的情况下可用,因为我可以输入:

进入 Snow Leopard 上的 Apple Mail,它可以轻松找到所有内容。

所以问题是...

  1. 应该https://domain.exchangeserver.org/autodiscover/autodiscover.xml可以工作,但我在尝试连接时错过了一步?或者,

  2. 在发送自动发现请求之前,Apple Mail 和其他客户端使用什么技巧(可能涉及 ping 电子邮件地址?)将地址解析为 OWA 子域?

感谢任何知道或可以大胆猜测的人。

0 投票
1 回答
1926 浏览

c# - TimeZoneInfo - 为什么我似乎不能创建它的实例?

我正在尝试使用 EWS API 从我正在编写的控制台程序访问 Exchange 服务器。我已经指定了我要连接的交换服务器的类型,但是当我尝试执行我拥有的代码时,它给了我

错误 1 ​​类型“System.TimeZoneInfo”在未引用的程序集中定义。您必须添加对程序集“System.Core,Version=3.5.0.0,Culture=neutral,PublicKeyToken=b77a5c561934e089”的引用。C:\Documents and Settings\jsorensen\My Documents\Visual Studio 2005\Projects\ConsoleApplication2\ConsoleApplication2\Program.cs 26 13 ConsoleApplication2

Microsoft Visual Studio Academic Edition 是否不支持 TimeZoneInfo 或者 XP 的 .Net 版本是否不够最新,无法与 EWS API 一起使用?我对 C# 编程比较陌生,所以有些东西仍然令人困惑。

0 投票
1 回答
570 浏览

c# - Exchange 2007 邮箱权限(没有 Powershell Cmdlet)

有没有办法在不使用 Exchange 命令行管理程序组件的情况下授予用户对用户邮箱的“完全邮箱访问权限”?

希望远程授予访问权限,但无需部署 PowerShell 和 EMS 组件。我正在使用 Exchange Server 2007 SP1 使用 C# (.Net 3.5)。

非常感谢任何意见或建议。

0 投票
1 回答
3152 浏览

exchangewebservices - Exchange 2010 EWS 删除邮件

如何使用 EWS 删除邮箱中的电子邮件?

网上好像没那么多?

我正在计划一个应用程序,我需要知道它是否可能以及如何去做。

0 投票
5 回答
587720 浏览

c# - 如何检测此字典键是否存在于 C# 中?

我正在使用带有联系人数据的 Exchange Web 服务托管 API。我有以下代码,它是功能性的,但并不理想:

正如我所说,这段代码有效。现在,如果可能的话,我想让它吸得少一点。

我找不到任何方法允许我在尝试访问它之前检查字典中的键是否存在,如果我尝试读取它(使用.ToString())并且它不存在,则会引发异常:

500
给定的键不在字典中。

我怎样才能重构这段代码以减少吸收(同时仍然有效)?

0 投票
1 回答
2222 浏览

exchange-server - 在公共服务器上测试 Exchange EWS

是否有任何公共 Exchange 服务器(模拟器)可用于测试/试验我的 Exchange Web 服务实施?

0 投票
0 回答
106 浏览

automation - 远程操作 Exchange 2003 共享联系人文件夹

我有一个在远程服务器上运行的 CRM Web 应用程序,它需要将其联系人与内部 Exchange 2003 共享联系人同步。

Exchange 2003 似乎不支持 Web 服务。解决这个问题的典型方法是什么?我最初的直觉是在 Exchange 服务器上打开端口 80,运行一个简单的网络服务器,发布到它,然后通过 OLE 自动化脚本控制 Exchange(如果人们仍然这么称呼它!)但可能有更好的解决方案我'米不知道。

有什么建议么?