【问题标题】:Getting MIME content is not working in Graph API ( 3.1.0) for Java SDK获取 MIME 内容在 Java SDK 的 Graph API ( 3.1.0) 中不起作用
【发布时间】:2021-07-07 23:32:07
【问题描述】:

我正在尝试获取带有附件的邮件的 mime 内容, 我正在使用具有内容方法的 3.1.0,我正在使用这种方法来获取 mime-content(uses /$value),下面是我的请求。以下是我们正在使用的参考文档。

https://docs.microsoft.com/en-us/graph/api/message-get?view=graph-rest-1.0&tabs=java#example-4-get-mime-content

我收到代码为 200 的响应,标题为 Content-Type: text/plain, body has nothing and body.contentLength() 为 -1,

是的,邮件中有正文和附件。

如果我在请求/标头中遗漏任何内容,请帮助我

消息的 MIME 内容代码: 请求:https://graph.microsoft.com/v1.0/users/{EmailId}/messages/{message id}/$value

InputStream stream = graphClient.users("emailId")
       .messages(message.id)
       .content()
       .buildRequest()
       .get();

【问题讨论】:

  • 你试过在Graph Explorer中测试它吗?你能看到同样的问题吗?
  • 使用最新的 Graph SDK for Java 并进行 Graph API 调用 - 它工作正常,我可以获得 MIME。还要测试上面@ShivaKeshavVarma 推荐的内容。

标签: java microsoft-graph-api


【解决方案1】:

我找到了答案,下面应该允许您在文本中表示 mime 内容。

final InputStream result = graphClient.me().messages("id").content().buildRequest().get();
final BufferedReader r = new BufferedReader(new InputStreamReader(result));
final StringBuilder content = new StringBuilder();
String line;

while ((line = r.readLine()) != null) {
   content.append(line).append('\n');
}

String text = CoreHttpProvider.streamToString(result);

【讨论】:

    猜你喜欢
    • 2023-01-29
    • 1970-01-01
    • 2021-06-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-05-16
    相关资源
    最近更新 更多