在 Akka 中将 ContentTypes 或 MediaTypes 设置为 `image/jpeg`

To set ContentTypes or MediaTypes to `image/jpeg` in Akka

我正在尝试使用 Scala 在 akka 中进行测试。我需要测试某些图像是否为“.jpeg”。在我的函数中,我必须查看 ContentType -> MediaType。在函数中这不是问题,因为我从计算机获取图像,但为了测试我必须创建一个 "Mock up".

我首先尝试使用 ContentTypes:

val httpResponse = HttpEntity(ContentTypes.`text/plain(UTF-8)`,"image")

但问题是,它应该是 image/jpeg 而不是 text/... 但没有那个选项。

然后,我在尝试:

val httpResponse = HttpEntity(MediaTypes.`image/jpeg`, )

这很好,但我不知道在逗号后面写什么。我什至不知道,如果是这样的话。

我一直在寻找 here 但没有找到答案。

我还看到了另一个帖子,比如,但我没有帮助。

我找到了问题的答案。

与:

val httpResponse = HttpEntity(MediaTypes.`image/jpeg`, )

逗号之后应该是一个数组字节。

就我而言,它是这样工作的:

val httpResponse = HttpEntity(MediaTypes.`image/gif`, new Array[Byte](3))

'因为对我来说,我拥有的图像并不重要。但是,如果对您来说图像很重要,那么您可以创建图像的 Array[Byte],仅此而已。

最有趣的是 httpResponse.contentType 有效并且在 contentType 里面是一个 mediaType

希望对大家有所帮助。