繁体   English   中英

使用Restlet上传文件

[英]File upload using restlet

我有一个很大的问题。我需要使用rest服务上传文件。 我的问题是我需要在一个POST请求中上载文件以及有关文件..all的一些信息。我正在使用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。 这将使您的代码更简单。

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

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

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM