Загрузить файл в конкретную учетную запись Google Drive, используя Java - PullRequest
0 голосов
/ 25 ноября 2018

У меня есть приложение, размещенное на веб-сайте heruko.

Я хочу, чтобы пользователи могли размещать какой-либо текст на веб-сайте (используя вводимый текст или что-то еще), а затем я хочу взять этот текст, создайте из него файл .txt, а затем загрузите его на мой диск Google.

У меня на стороне сервера написано в Java.Это выглядит так:

@WebServlet( name = "uploadServlet", urlPatterns = {"/uploadFile"} )

public class uploadFIleServlet extends HttpServlet {

@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp)
        throws ServletException, IOException {
    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);
    ....
    //Send file to my google drive account using my email and password.
    //Send file to my google drive account using my email and password.
    //Send file to my google drive account using my email and password.
    //Send file to my google drive account using my email and password.
    //Send file to my google drive account using my email and password.
    //Send file to my google drive account using my email and password.
    ....
    System.out.println("File ID: " + file.getId());

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

}

Когда клиент запрашивает URL-адрес / uploadFile, выполняется упомянутая выше функция "doGet".Пока все хорошо.

Тогда я не знаю, какой код будет делать то, что я ищу, потому что все, что я нашел в документации Google, просит пользователей войти на свой диск Google, а я нет.хочу, чтобы это произошло.

Я хочу, чтобы пользователи могли просто помещать текст в мое приложение, поэтому он будет отправлен на мою учетную запись Google Drive в виде файла .txt.

Мне все равно, когда я отправлю свой адрес электронной почты и пароль в коде Java!

Итак, как мне это сделать?

Спасибо!

1 Ответ

0 голосов
/ 26 ноября 2018

В чем проблема точно?Если у вас есть этот файл в вашем методе, создайте некоторый объект, который позаботится о выполнении http-запросов.Разместите свой текстовый файл на диске Google, используя свои учетные данные.Вы можете найти много хороших библиотек для выполнения http-запроса, например, мой: https://github.com/Iprogrammerr/Gentle-Request Псевдокод, используя мою библиотеку:

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();
...