В облачных конечных точках доступ к деталям API предоставляется на общем уровне API, а не для каждого метода. Таким образом, вы не можете иметь определенные методы, видимые только для определенных людей.
Однако, вы можете иметь несколько API конечных точек в одном проекте GCP (используя gcloud endpoints services deploy
, со спецификациями API, которые имеют разные имена хостов).
Тем не менее, если вы используете Endpoints Frameworks (из тега вашего вопроса), у вас есть хитрые ограничения для работы: один проект GCP может иметь не более одного приложения App Engine ([your-project-id]
.appspot). .com). Итак, что делать?
Если вы хотите разместить API администратора в другом поддомене, вы можете использовать «сервисы» App Engine (ранее называвшиеся «модулями»). Это позволяет развертывать приложения в доменах, таких как [modulename]-dot-[your-project-id].appspot.com
. Вы можете загружать различные спецификации API конечных точек для каждого из этих имен хостов.
Это должно позволить вам сделать что-то вроде:
- API администратора:
[admin]-dot-[your-project-id].appspot.com
- Пользовательский API:
[user]-dot-[your-project-id].appspot.com
, или просто [your-project-id].appspot.com
("default"
услуга)