- Google Sheets API v4 (revision 612)
- Nested Class Summary
- Field Summary
- Constructor Summary
- Method Summary
- Methods inherited from class com.google.api.client.googleapis.services.json.AbstractGoogleJsonClient
- Methods inherited from class com.google.api.client.googleapis.services.AbstractGoogleClient
- Methods inherited from class java.lang.Object
- Field Detail
- DEFAULT_ROOT_URL
- DEFAULT_SERVICE_PATH
- DEFAULT_BATCH_PATH
- DEFAULT_BASE_URL
- Constructor Detail
- Sheets
- Method Detail
- initialize
- spreadsheets
- Краткое руководство по Java
- Цели
- Предпосылки
- Настройте свою среду
- Включить API
- Настройка экрана согласия OAuth
- Авторизация учетных данных для настольного приложения
- Подготовьте рабочее место
- Настроить образец
- Запустите образец
- Следующие шаги
Google Sheets API v4 (revision 612)
Service definition for Sheets (v4). Reads and writes Google Sheets. For more information about this service, see the API Documentation This service uses SheetsRequestInitializer to initialize global parameters via its Sheets.Builder .
Nested Class Summary
Field Summary
Constructor Summary
Method Summary
Modifier and Type | Method and Description |
---|---|
protected void | initialize (com.google.api.client.googleapis.services.AbstractGoogleClientRequest httpClientRequest) |
Sheets.Spreadsheets | spreadsheets () |
Methods inherited from class com.google.api.client.googleapis.services.json.AbstractGoogleJsonClient
Methods inherited from class com.google.api.client.googleapis.services.AbstractGoogleClient
Methods inherited from class java.lang.Object
Field Detail
DEFAULT_ROOT_URL
public static final java.lang.String DEFAULT_ROOT_URL
The default encoded root URL of the service. This is determined when the library is generated and normally should not be changed.
DEFAULT_SERVICE_PATH
public static final java.lang.String DEFAULT_SERVICE_PATH
The default encoded service path of the service. This is determined when the library is generated and normally should not be changed.
DEFAULT_BATCH_PATH
public static final java.lang.String DEFAULT_BATCH_PATH
The default encoded batch path of the service. This is determined when the library is generated and normally should not be changed.
DEFAULT_BASE_URL
public static final java.lang.String DEFAULT_BASE_URL
The default encoded base URL of the service. This is determined when the library is generated and normally should not be changed.
Constructor Detail
Sheets
public Sheets(com.google.api.client.http.HttpTransport transport, com.google.api.client.json.JsonFactory jsonFactory, com.google.api.client.http.HttpRequestInitializer httpRequestInitializer)
- Google App Engine: com.google.api.client.extensions.appengine.http.UrlFetchTransport
- Android: newCompatibleTransport from com.google.api.client.extensions.android.http.AndroidHttp
- Java: com.google.api.client.googleapis.javanet.GoogleNetHttpTransport#newTrustedTransport()
- Jackson: com.google.api.client.json.jackson2.JacksonFactory
- Google GSON: com.google.api.client.json.gson.GsonFactory
- Android Honeycomb or higher: com.google.api.client.extensions.android.json.AndroidJsonFactory
Method Detail
initialize
protected void initialize(com.google.api.client.googleapis.services.AbstractGoogleClientRequest httpClientRequest) throws java.io.IOException
spreadsheets
Sheets sheets = new Sheets(. );
Sheets.Spreadsheets.List request = sheets.spreadsheets().list(parameters . )
Краткое руководство по Java
Оптимизируйте свои подборки Сохраняйте и классифицируйте контент в соответствии со своими настройками.
В кратких руководствах объясняется, как настроить и запустить приложение, которое вызывает API Google Workspace.
В кратких руководствах по Google Workspace используются клиентские библиотеки API для обработки некоторых деталей процесса аутентификации и авторизации. Мы рекомендуем вам использовать клиентские библиотеки для ваших собственных приложений. В этом кратком руководстве используется упрощенный подход к проверке подлинности, подходящий для среды тестирования. Для рабочей среды мы рекомендуем изучить аутентификацию и авторизацию, прежде чем выбирать учетные данные для доступа , подходящие для вашего приложения.
Создайте приложение командной строки Java, которое отправляет запросы к API Google Таблиц.
Цели
Предпосылки
Настройте свою среду
Для завершения этого краткого руководства настройте свою среду.
Включить API
Настройка экрана согласия OAuth
Если вы используете новый проект Google Cloud для выполнения этого краткого руководства, настройте экран согласия OAuth и добавьте себя в качестве тестового пользователя. Если вы уже выполнили этот шаг для своего облачного проекта, перейдите к следующему разделу.
- В консоли Google Cloud выберите menu >API и службы >Экран согласия OAuth . Перейти к экрану согласия OAuth
- Выберите тип пользователя для своего приложения, затем нажмите «Создать» .
- Заполните регистрационную форму приложения, затем нажмите «Сохранить и продолжить» .
- На данный момент вы можете пропустить добавление областей и нажать «Сохранить и продолжить» . В будущем, когда вы будете создавать приложение для использования за пределами вашей организации Google Workspace, вы должны будете добавить и проверить области авторизации, необходимые вашему приложению.
- Если вы выбрали Внешний для типа пользователя, добавьте тестовых пользователей:
- В разделе «Проверить пользователей» нажмите «Добавить пользователей» .
- Введите свой адрес электронной почты и любых других авторизованных тестовых пользователей, затем нажмите «Сохранить и продолжить» .
Авторизация учетных данных для настольного приложения
- В консоли Google Cloud выберите menu >API и службы >Учетные данные . Перейти к учетным данным
- Нажмите «Создать учетные данные» >«Идентификатор клиента OAuth» .
- Нажмите Тип приложения >Приложение для ПК .
- В поле Имя введите имя учетных данных. Это имя отображается только в консоли Google Cloud.
- Щелкните Создать . Появится экран создания клиента OAuth, показывающий ваш новый идентификатор клиента и секрет клиента.
- Нажмите ОК . Вновь созданные учетные данные отображаются в разделе идентификаторов клиентов OAuth 2.0.
- Сохраните загруженный файл JSON под credentials.json и переместите файл в свой рабочий каталог.
Подготовьте рабочее место
gradle init --type basic mkdir -p src/main/java src/main/resources
apply plugin: ‘java’ apply plugin: ‘application’ mainClassName = ‘SheetsQuickstart’ sourceCompatibility = 11 targetCompatibility = 11 version = ‘1.0’ repositories < mavenCentral() >dependencies
Настроить образец
- В каталоге src/main/java/ создайте новый файл Java с именем, которое соответствует значению mainClassName в вашем файле build.gradle .
- Включите следующий код в новый файл Java:
import com.google.api.client.auth.oauth2.Credential; import com.google.api.client.extensions.java6.auth.oauth2.AuthorizationCodeInstalledApp; import com.google.api.client.extensions.jetty.auth.oauth2.LocalServerReceiver; import com.google.api.client.googleapis.auth.oauth2.GoogleAuthorizationCodeFlow; import com.google.api.client.googleapis.auth.oauth2.GoogleClientSecrets; import com.google.api.client.googleapis.javanet.GoogleNetHttpTransport; import com.google.api.client.http.javanet.NetHttpTransport; import com.google.api.client.json.JsonFactory; import com.google.api.client.json.gson.GsonFactory; import com.google.api.client.util.store.FileDataStoreFactory; import com.google.api.services.sheets.v4.Sheets; import com.google.api.services.sheets.v4.SheetsScopes; import com.google.api.services.sheets.v4.model.ValueRange; import java.io.FileNotFoundException; import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; import java.security.GeneralSecurityException; import java.util.Collections; import java.util.List; public class SheetsQuickstart < private static final String APPLICATION_NAME = "Google Sheets API Java Quickstart"; private static final JsonFactory JSON_FACTORY = GsonFactory.getDefaultInstance(); private static final String TOKENS_DIRECTORY_PATH = "tokens"; /** * Global instance of the scopes required by this quickstart. * If modifying these scopes, delete your previously saved tokens/ folder. */ private static final ListSCOPES = Collections.singletonList(SheetsScopes.SPREADSHEETS_READONLY); private static final String CREDENTIALS_FILE_PATH = "/credentials.json"; /** * Creates an authorized Credential object. * * @param HTTP_TRANSPORT The network HTTP Transport. * @return An authorized Credential object. * @throws IOException If the credentials.json file cannot be found. */ private static Credential getCredentials(final NetHttpTransport HTTP_TRANSPORT) throws IOException < // Load client secrets. InputStream in = SheetsQuickstart.class.getResourceAsStream(CREDENTIALS_FILE_PATH); if (in == null) < throw new FileNotFoundException("Resource not found: " + CREDENTIALS_FILE_PATH); >GoogleClientSecrets clientSecrets = GoogleClientSecrets.load(JSON_FACTORY, new InputStreamReader(in)); // Build flow and trigger user authorization request. GoogleAuthorizationCodeFlow flow = new GoogleAuthorizationCodeFlow.Builder( HTTP_TRANSPORT, JSON_FACTORY, clientSecrets, SCOPES) .setDataStoreFactory(new FileDataStoreFactory(new java.io.File(TOKENS_DIRECTORY_PATH))) .setAccessType("offline") .build(); LocalServerReceiver receiver = new LocalServerReceiver.Builder().setPort(8888).build(); return new AuthorizationCodeInstalledApp(flow, receiver).authorize("user"); > /** * Prints the names and majors of students in a sample spreadsheet: * https://docs.google.com/spreadsheets/d/1BxiMVs0XRA5nFMdKvBdBZjgmUUqptlbs74OgvE2upms/edit */ public static void main(String. args) throws IOException, GeneralSecurityException < // Build a new authorized API client service. final NetHttpTransport HTTP_TRANSPORT = GoogleNetHttpTransport.newTrustedTransport(); final String spreadsheetId = "1BxiMVs0XRA5nFMdKvBdBZjgmUUqptlbs74OgvE2upms"; final String range = "Class Data!A2:E"; Sheets service = new Sheets.Builder(HTTP_TRANSPORT, JSON_FACTORY, getCredentials(HTTP_TRANSPORT)) .setApplicationName(APPLICATION_NAME) .build(); ValueRange response = service.spreadsheets().values() .get(spreadsheetId, range) .execute(); List> values = response.getValues(); if (values == null || values.isEmpty()) < System.out.println("No data found."); >else < System.out.println("Name, Major"); for (List row : values) < // Print columns A and E, which correspond to indices 0 and 4. System.out.printf("%s, %s\n", row.get(0), row.get(4)); >> > >
Запустите образец
- Если вы еще не вошли в свою учетную запись Google, вам будет предложено выполнить вход. Если вы вошли в несколько учетных записей, выберите одну учетную запись для авторизации.
- Нажмите Принять .
Информация об авторизации хранится в файловой системе, поэтому при следующем запуске примера кода авторизация не запрашивается.
Вы успешно создали свое первое Java-приложение, которое отправляет запросы к API Google Таблиц.
Следующие шаги
Если не указано иное, контент на этой странице предоставляется по лицензии Creative Commons «С указанием авторства 4.0», а примеры кода – по лицензии Apache 2.0. Подробнее об этом написано в правилах сайта. Java – это зарегистрированный товарный знак корпорации Oracle и ее аффилированных лиц.
Последнее обновление: 2023-07-13 UTC.