gpt4 book ai didi

java - 使用reSTLet上传文件

转载 作者:太空宇宙 更新时间:2023-11-04 08:23:59 25 4
gpt4 key购买 nike

我有一个非常大的问题。我需要使用休息服务上传文件。我的问题是我需要在一个 POST 请求中上传文件以及有关该文件的一些信息。我正在使用 ReSTLet。

到目前为止,我不必上传文件,只需上传信息,我使用outputStreamWriter 来上传文件。这是一个例子:

URL adminServerUrl = new URL(wwww....);
HttpURLConnection adminConnection = (HttpURLConnection) adminServerUrl.openConnection();
adminConnection.setRequestMethod("POST");
adminConnection.setDoOutput(true);
adminConnection.setDoInput(true);
adminConnection.setUseCaches(false);
adminConnection.setAllowUserInteraction(false);
OutputStream conOutput = adminConnection.getOutputStream();
Writer writer = new OutputStreamWriter(conOutput, "UTF-8");
writer.write("&due_date=" + (project.getDueDate());
writer.write("&source=" + project.getSourceLanguage());
writer.close();
conOutput.close();

之后我会得到回复,就是这样......但现在我必须上传文件,但我不知道如何做到这一点

最佳答案

如果可能的话,我建议在客户端和服务器端同时使用 ReSTLet API。这将使您的代码更简单。

通常的解决方案是使用分段文件上传,但这不是必需的,而且通常更复杂。您可以首先使用信息/元数据创建上传资源,然后将文件发送到子资源。

在客户端,您应该使用 FileRepresentation 加载文件,然后使用 ClientResource#post(myFileRep) 将其发送到目标服务器。

在服务器端,您应该再次使用 ClientResource 检索发布的实体/表示并将其保存到本地文件或其他位置(file:///URI 方案与 PUT 配合使用)。

关于java - 使用reSTLet上传文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8974541/

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