如何将JsonNode作为json文件中的电子邮件附件发送为json文件
// Json node bit
JsonNode requestBody = request().body().asJson();
// Mail bit
messageBodyPart = new MimeBodyPart();
messageBodyPart.setDataHandler(new DataHandler( It should be passed here));
messageBodyPart.setFileName("file.json");
multipart.addBodyPart(messageBodyPart);
答案 0 :(得分:1)
如果你查看DataHandler
文档,它会显示三个构造函数。其中一个需要DataSource
。 javamail API有一个名为ByteArrayDataSource
因此,如果您弄清楚如何将JsonNode
序列化为JSON String
,则可以执行以下操作:
String jsonStr = ...
new DataHandler(new ByteArrayDataSource(jsonStr.getBytes()));
另外,请注意,您还应将附件的MIME类型设置为applicatio/json
。