IT rekvalifikace s garancí práce. Seniorní programátoři vydělávají až 160 000 Kč/měsíc a rekvalifikace je prvním krokem. Zjisti, jak na to!
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.

Diskuze: Jak získat z MS Graph Mime Content

V předchozím kvízu, Test znalostí C# .NET online, jsme si ověřili nabyté zkušenosti z kurzu.

Aktivity
Avatar
Nikola Sterziková (PaNika):29.10.2018 13:07

Ahoj, pracuji teď s technologií Microsoft Graph pomocí jejich SDK, která mi umožní připojit se na Exchange server a získat e-maily. Potřebuji e-maily (respektive konkrtétní mail) dostat jako Mime content, tedy pole bytů, které pak můžu uložit jako soubor .eml. Zmíněné SDK umožňuje dostat emaily jako kolekci typů Microsoft.Grap­h.Message což v tomto případě nepotřebuji. Potřebuji nějak dostat původní content jako pole bytů a nevím jak.

Zkusil jsem: V dokumentaci k REST API jsem našla GET pažadavek, kterým je toto možno udělat:
https://blogs.msdn.microsoft.com/…aph-or-rest/ ale nevím, jak to zařídit pomocí SDK.
Vyzkoušela jsem tento kód:

var stringRequest = graphClient.Users[user.Id].MailFolders.Inbox.Messages[message.Id].AppendSegmentToRequestUrl("$value");
            using (var client = new System.Net.Http.HttpClient())
            {
                using (var request = new System.Net.Http.HttpRequestMessage(System.Net.Http.HttpMethod.Get, stringRequest))
                {
                    AuthenticationResult authResult = authenticateAAD();
                    request.Headers.Authorization = new AuthenticationHeaderValue("Bearer", authResult.AccessToken);
                    using (System.Net.Http.HttpResponseMessage response = await graphClient.HttpProvider.SendAsync(request))
                    {
                        if (response.StatusCode == System.Net.HttpStatusCode.OK)
                        {
                             var result =  response.Content.ReadAsByteArrayAsync().Result;

                        }
                    }
                }
            }

Jenže při posílání požadavku vznikne chyba: Microsoft.Grap­h.ServiceExcep­tion: 'Code: ErrorInvalidRequest
Message: The OData request is not supported.

 
Odpovědět
29.10.2018 13:07
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 1 zpráv z 1.