gpt4 book ai didi

android - 如何使用 Retrofit 将包含图像的类从 Android 发送到 Java Restful Web 服务器

转载 作者:行者123 更新时间:2023-11-29 01:29:10 26 4
gpt4 key购买 nike

我使用 Retrofit 将数据(类)从 android 传输到服务器。通常我们在客户端和服务器端创建 Same 类,其中包含数据类型,如 int,String 在两边都相同。现在我需要在类里面将 Image 发送到服务器。此外,我只是不想将图像发送到服务器,但我想发送包含 1 个图像作为数据类型的类。那么我该怎么做?或任何建议我如何使用其他工具执行此操作?

最佳答案

假设您已经有一个指向图像的 File:

final File imageFile = ...;

注意:如何获取此文件取决于您是否只允许在文件选择器中使用本地文件(或者例如实际位于 Google Drive 中的图像)以及您使用的 Android 版本等。

要上传图片,您需要使用 Retrofit 的 TypedFile - 这是对我有用的:

@POST("/api/image/upload")
@Multipart
public void submitPictureToVoting(@Part("user_id") Integer userId,
@Part("image_title") String imageTitle,
@Part("file") TypedFile file,
Callback<UploadImageResponse> callback);

然后:

final TypedFile typedImageFile = new TypedFile("application/octet-stream", imageFile);

mApiClient.submitPictureToVoting(
1234567,
"This is me!",
typedImageFile,
new Callback<UploadImageResponse> {
// ...
});

关于android - 如何使用 Retrofit 将包含图像的类从 Android 发送到 Java Restful Web 服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32264421/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com