Объявление : Все некоммерческие проекты, зарегистрированные для использования Earth Engine до
15 апреля 2025 года, должны
подтвердить некоммерческое право на сохранение доступа к Earth Engine.
ee.data.authenticateViaOauth
Оптимизируйте свои подборки
Сохраняйте и классифицируйте контент в соответствии со своими настройками.
Настраивает клиентскую аутентификацию вызовов API EE через клиентскую библиотеку API Google для JavaScript. Библиотека будет загружена автоматически, если она еще не загружена на странице. Пользователю будет предложено предоставить приложению, идентифицированному clientId, доступ к своим данным EE, если он не сделал этого ранее.
Этот или другой метод аутентификации следует вызывать перед ee.initialize().
Обратите внимание, что если пользователь ранее не предоставлял доступ приложению, идентифицированному по идентификатору клиента, по умолчанию будет предпринята попытка открыть диалоговое окно, предлагающее пользователю предоставить требуемое разрешение. Однако это всплывающее окно может быть заблокировано браузером. Чтобы избежать этого, укажите обратный вызов opt_onImmediateFailed и в нем отобразите кнопку входа на странице, затем вызовите ee.data.authenticateViaPopup() из обработчика событий нажатия этой кнопки. Это предотвратит блокировку всплывающего окна браузером, поскольку теперь оно является прямым результатом действия пользователя.
Токен аутентификации будет автоматически обновлен, когда это возможно. Вы можете смело предположить, что все асинхронные вызовы будут отправлены с соответствующими учетными данными. Однако для синхронных вызовов вам следует проверить наличие токена аутентификации с помощью ee.data.getAuthToken() и вызвать ee.data.refreshAuthToken() вручную, если его нет. Операция обновления токена является асинхронной и не может быть выполнена за кулисами по требованию перед синхронными вызовами.
Использование | Возвраты | ee.data.authenticateViaOauth(clientId, success, error , extraScopes , onImmediateFailed , suppressDefaultScopes ) | |
Аргумент | Тип | Подробности | clientId | Нить | Идентификатор клиента OAuth приложения или null для отключения аутентифицированных вызовов. Его можно получить через Google Developers Console. Проект должен иметь JavaScript origin, соответствующий домену, на котором запущен скрипт. |
success | Функция | Функция, вызываемая в случае успешной аутентификации. |
error | Функция, необязательная | Функция, вызываемая при неудачной аутентификации, передавшей сообщение об ошибке. Если аутентификация в режиме немедленного (за кулисами) не удалась и указан opt_onImmediateFailed, эта функция вызывается вместо opt_error. |
extraScopes | Список<Строка>, необязательно | Дополнительные области OAuth для запроса. |
onImmediateFailed | Функция, необязательная | Функция, которая вызывается, если автоматическая закулисная аутентификация не удалась. По умолчанию ee.data.authenticateViaPopup(), привязанная к переданным обратным вызовам. |
suppressDefaultScopes | Булево, необязательно | Если задано значение true, запрашиваются только области, указанные в opt_extraScopes; области по умолчанию не запрашиваются, если явно не указаны в opt_extraScopes. |
Если не указано иное, контент на этой странице предоставляется по лицензии Creative Commons "С указанием авторства 4.0", а примеры кода – по лицензии Apache 2.0. Подробнее об этом написано в правилах сайта. Java – это зарегистрированный товарный знак корпорации Oracle и ее аффилированных лиц.
Последнее обновление: 2025-07-24 UTC.
[null,null,["Последнее обновление: 2025-07-24 UTC."],[[["\u003cp\u003eEnables authenticated access to Earth Engine data using your Google account via the Google APIs Client Library for JavaScript.\u003c/p\u003e\n"],["\u003cp\u003eRequires initialization before using Earth Engine functionalities and might prompt users for permission to access their Earth Engine data.\u003c/p\u003e\n"],["\u003cp\u003eAutomatically refreshes authentication tokens for asynchronous calls, but synchronous calls may require manual token refresh using \u003ccode\u003eee.data.getAuthToken()\u003c/code\u003e and \u003ccode\u003eee.data.refreshAuthToken()\u003c/code\u003e.\u003c/p\u003e\n"],["\u003cp\u003eProvides options for handling authentication failures, including specifying custom error callbacks and displaying an in-page login button to avoid browser popup blockers.\u003c/p\u003e\n"],["\u003cp\u003eAllows customization of OAuth scopes and client ID for specific application requirements.\u003c/p\u003e\n"]]],[],null,["# ee.data.authenticateViaOauth\n\n\u003cbr /\u003e\n\nConfigures client-side authentication of EE API calls through the Google APIs Client Library for JavaScript. The library will be loaded automatically if it is not already loaded on the page. The user will be asked to grant the application identified by clientId access to their EE data if they have not done so previously.\n\n\u003cbr /\u003e\n\nThis or another authentication method should be called before ee.initialize().\n\nNote that if the user has not previously granted access to the application identified by the client ID, by default this will try to pop up a dialog window prompting the user to grant the required permission. However, this popup can be blocked by the browser. To avoid this, specify the opt_onImmediateFailed callback, and in it render an in-page login button, then call ee.data.authenticateViaPopup() from the click event handler of this button. This stops the browser from blocking the popup, as it is now the direct result of a user action.\n\nThe auth token will be refreshed automatically when possible. You can safely assume that all async calls will be sent with the appropriate credentials. For synchronous calls, however, you should check for an auth token with ee.data.getAuthToken() and call ee.data.refreshAuthToken() manually if there is none. The token refresh operation is asynchronous and cannot be performed behind-the-scenes on-demand prior to synchronous calls.\n\n| Usage | Returns |\n|------------------------------------------------------------------------------------------------------------------------------------|---------|\n| `ee.data.authenticateViaOauth(clientId, success, `*error* `, `*extraScopes* `, `*onImmediateFailed* `, `*suppressDefaultScopes*`)` | |\n\n| Argument | Type | Details |\n|-------------------------|--------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| `clientId` | String | The application's OAuth client ID, or null to disable authenticated calls. This can be obtained through the Google Developers Console. The project must have a JavaScript origin that corresponds to the domain where the script is running. |\n| `success` | Function | The function to call if authentication succeeded. |\n| `error` | Function, optional | The function to call if authentication failed, passed the error message. If authentication in immediate (behind-the-scenes) mode fails and opt_onImmediateFailed is specified, that function is called instead of opt_error. |\n| `extraScopes` | List\\\u003cString\\\u003e, optional | Extra OAuth scopes to request. |\n| `onImmediateFailed` | Function, optional | The function to call if automatic behind-the-scenes authentication fails. Defaults to ee.data.authenticateViaPopup(), bound to the passed callbacks. |\n| `suppressDefaultScopes` | Boolean, optional | When true, only scopes specified in opt_extraScopes are requested; the default scopes are not requested unless explicitly specified in opt_extraScopes. |"]]