function TMainForm.ExtractDraftIdFromResponse(const ResponseContent: string): string;
var
JSONObj: TJSONObject;
begin
JSONObj := TJSONObject.ParseJSONValue(ResponseContent) as TJSONObject;
try
if Assigned(JSONObj) then
Result := JSONObj.GetValue('id').Value
else
Result := '';
finally
JSONObj.Free;
end;
end;
Дополнительные рекомендации:
Убедитесь, что ваше приложение имеет необходимые разрешения в Azure AD: Mail.ReadWrite Mail.Send Files.ReadWrite
Для больших файлов (более 3MB) используйте метод с ссылкой на OneDrive.
Для отладки используйте Graph Explorer (https://developer.microsoft.com/graph/graph-explorer) для проверки запросов.
Убедитесь, что ваш AccessToken действителен и содержит необходимые scope.
Для работы с большими файлами рассмотрите возможность использования сессий загрузки (upload sessions).
Это решение должно решить вашу проблему с созданием черновиков писем с вложениями через Graph API в Delphi.
Проблема связана с созданием черновика письма с вложением через Microsoft Graph API, включая ошибки формата JSON, указания вложений и аутентификации, с предложенными решениями на Delphi.
Комментарии и вопросы
Получайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш Telegram-канал delphi_kansoftware и будьте в курсе последних тенденций в разработке под Linux, Windows, Android и iOS
Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.