GoLang EWS / ExchangeService包装器

时间:2016-11-28 18:02:58

标签: c# go dll exchange-server exchangewebservices

我有一些C#代码使用ExchangeService(通过Microsoft.Exchange.WebServices.dll)对象来执行一些典型的电子邮件任务(例如,获取电子邮件,发送电子邮件)。我希望能够做同样的事情,但使用Go而不是C#。最直接的方法是什么?我知道有一些工具,比如CGo,但鉴于这是MSFT提供的DLL,它是.NET框架的一部分,我怀疑这个过程并不像我创建自己的DLL那么简单。

4 个答案:

答案 0 :(得分:2)

您必须将自己的SOAP请求转发给EWS。托管/ .NET EWS API只是一组很好的SOAP请求。

答案 1 :(得分:1)

您只能使用带有.NET语言的托管.dll,即C#,PowerShell等。如果您不打算使用.NET语言,那么您必须构建自己的EWS消息请求。

仅供参考,如果这是Exchange 2016环境,您可能需要查看与语言无关的Exchange REST API。

答案 2 :(得分:0)

我正在https://github.com/mhewedy/ews上工作,是一个好的开始。

答案 3 :(得分:-1)

您无法使用.dll文件在Go中建立客户端。您必须download the WSDL file和所需的XSD文件(messages.xsdtypes.xsd),然后将WSDL转换为Go包(我建议使用GoWSDL)。然后,您可以编写Go客户端以与EWS通信。