使用java将文件上载到特定的google驱动器帐户

使用java将文件上载到特定的google驱动器帐户,java,rest,file,web,google-api-js-client,Java,Rest,File,Web,Google Api Js Client,我有一个应用程序托管在heruko,一个网站 我希望用户能够使用输入文本或其他东西在网站中输入一些文本,然后我想获取这些文本,从中创建一个.txt文件,然后将其上传到我的谷歌硬盘 我用java编写了服务器端。 它看起来像: @WebServlet name=uploadServlet, urlPatterns={/uploadFile} } 当客户端请求/uploadFile url时,执行上面提到的doGet函数。到目前为止还不错 然后,我不知道什么代码可以完成我所寻找的,因为我在谷歌文档中

我有一个应用程序托管在heruko,一个网站

我希望用户能够使用输入文本或其他东西在网站中输入一些文本,然后我想获取这些文本,从中创建一个.txt文件,然后将其上传到我的谷歌硬盘

我用java编写了服务器端。 它看起来像:

@WebServlet name=uploadServlet, urlPatterns={/uploadFile}

}

当客户端请求/uploadFile url时,执行上面提到的doGet函数。到目前为止还不错

然后,我不知道什么代码可以完成我所寻找的,因为我在谷歌文档中找到的所有内容都要求用户登录到他们的谷歌硬盘,这是我不希望发生的事情

我希望用户能够在我的应用程序中输入文本,因此它将以.txt文件的形式发送到我的google drive帐户

我不在乎把我的电子邮件和密码放在java代码中

那么,我该怎么做呢


谢谢大家!

到底是什么问题?如果您的方法中有这个文件,请创建一些对象来处理http请求。使用您的凭据将您的文本文件发布到google drive。您可以找到许多用于发出http请求的好库,例如: 伪代码,使用我的库:

ServletOutputStream out = resp.getOutputStream();
out.write("hello omer you won".getBytes());

File fileMetadata = new File();
fileMetadata.setName("omer.txt");
java.io.File filePath = new java.io.File("omer.txt");
FileContent mediaContent = new FileContent("image/jpeg", filePath);
Connections connections = new HttpConnections();
Response response = connections.response(new PostRequest("google-url", new AuthorizationHeader("whatever google want to authorize your account"), fileMetadata);

System.out.println("File ID: " + file.getId());

out.flush();
out.close();

我的问题是,我尝试过的每一件事都要求用户登录到他们的Google drive帐户,然后只有他们才能将其发布到我的帐户上。你能给我一段代码,它可以按照你说的做,而不需要向用户询问任何细节或任何身份验证吗?我只想在没有Google drive帐户的情况下获取他们的文本,即使客户没有Google drive帐户,我也希望这样做。你说你的网站上有来自某个表单的此文件内容,你所要做的就是向你的Google drive提供凭据。如果是这样的话,我已经编辑了我的答案。哦,老兄,你几乎理解我了。我们非常接近。我确实有某种形式的内容,但问题不是从表单中获取数据。问题是在我获取数据并从中创建文件后,如何将其上载到我的驱动器帐户。所以在我的问题中,我谈到了任何文件,因为从表单文本生成文件不是我的问题,我的问题是如何将一个就绪文件上传到我特定的Google drive帐户。所以现在我认为你的答案是好的,但我不明白在谷歌的url里填什么,在谷歌的网页里。。。那我应该放什么呢?感谢你的谷歌驱动。在授权标题中,输入一些来自谷歌账户的令牌和登录/密码。你必须检查他们的文件,知道他们想要什么,我不知道。
ServletOutputStream out = resp.getOutputStream();
out.write("hello omer you won".getBytes());

File fileMetadata = new File();
fileMetadata.setName("omer.txt");
java.io.File filePath = new java.io.File("omer.txt");
FileContent mediaContent = new FileContent("image/jpeg", filePath);
Connections connections = new HttpConnections();
Response response = connections.response(new PostRequest("google-url", new AuthorizationHeader("whatever google want to authorize your account"), fileMetadata);

System.out.println("File ID: " + file.getId());

out.flush();
out.close();