OpenAPI (Swagger) documentation does not take into account the routes hostname
Les mainteneurs répondent en général sous 1 jour
Personne n'a encore pris cette issue.
Évaluation
- Difficulté
- 4/5
- Temps estimé
- 3-5 jours
- Accessibilité débutants
- 35/100
Piste de recherche
Commencez par le point d’entrée de génération de documentation OpenAPI pour les métadonnées d’hôte de ApiResource, en utilisant la documentation API pour tenant et main-domain décrite dans le rapport. Comparez les spécifications générées pour les deux hôtes ; le travail est terminé lorsque les endpoints restreints à l’hôte sont omis de la documentation du tenant et que l’URL du serveur reflète l’hôte applicable.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
API Platform version(s) affected: ^3.1
Description
I have endpoints that needs to be accessible from different hosts for a multi-tenant app.
On the main domain (example.com/api), there are common data endpoints.
For tenant subdomain (tenant_identifier.example.com/api), there are the tenant data endpoints.
I tried to restrict the common data endpoints with the host parameter and it works as expected but the endpoints does not disappear from the tenant API documentation (tenant_identifier.example.com/api/docs). Therefore, the host does not seems to be taken into account for the OpenAPI specification.
How to reproduce
I have the following service configuration to inject the hostname dynamically:
# config/services.yaml
parameters:
# Used for route host matching as %env(...)% syntax is not supported
# @see https://stackoverflow.com/questions/47165113/environment-variables-in-route-annotations
hostname: '%env(resolve:APP_HOST)%'
# .env
APP_HOST="example.com"
When I specify the host used for an ApiResource, for instance:
#[ApiResource(
// ...
host: '%hostname%',
// ...
)]
class FooBar
The endpoints are still available from the tenant API documentation (tenant_identifier.example.com).
Possible Solution
The server url should be taken into account as it's shown in the OpenAPI specification.
Additional Context
Ask if necessary
- Langage dominant
- PHP
- Étoiles
- 2.6k
- Forks
- 987
- Merge moyen
- 1 j 17 h
- PR mergées (30 j)
- 63
Préparer son environnement
- Aucun Dockerfile ni fichier Docker Compose
- Propose un modèle de pull request
- Lire le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de api-platform/core
-
API Platform ignores array shapes in the JSON SchemaPeut-être pris @afraca l’a pris il y a 7 jours. Ouverte
Difficulté 2/5 1-3 heures Accessibilité débutants 78/100
api-platform/core#8766 ·
Les mainteneurs répondent en général sous 1 jour
-
SortFilter generates unsupported array form for parametersPeut-être pris Une pull request liée à cette issue est ouverte ou déjà fusionnée. Ouverte
Difficulté 2/5 1-3 heures Accessibilité débutants 72/100
api-platform/core#8744 ·
Les mainteneurs répondent en général sous 1 jour
-
JSON:API: resource schemas (`*.jsonapi`) have `properties` but no `type: object`Peut-être pris @ousamabenyounes l’a pris il y a 17 jours. Ouverte
Difficulté 2/5 Moins d'une heure Accessibilité débutants 80/100
api-platform/core#8701 ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 3/5 1-2 jours Accessibilité débutants 45/100
api-platform/core#8785 ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 4/5 3-5 jours Accessibilité débutants 48/100
api-platform/core#8771 ·
Les mainteneurs répondent en général sous 1 jour
Toutes les issues de api-platform/core
Issues similaires
-
mobile-app
Difficulté 2/5 1-3 heures Accessibilité débutants 74/100
Open-Locker/Open-Locker#352 ·
Les mainteneurs répondent en général sous 1 jour
-
[Bug]: SCIM Users groups[].value is returned as an integer, causing authentik user discovery to failOuverte
Difficulté 2/5 1-3 heures Accessibilité débutants 62/100
grokability/snipe-it#20006 ·
Les mainteneurs répondent en général sous 1 jour
-
fixed
Difficulté 2/5 1-3 heures Accessibilité débutants 62/100
firefly-iii/firefly-iii#13150 · 2 commentaires ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 62/100
TYPO3-Solr/ext-solr#4828 ·
Les mainteneurs répondent en général sous 5 jours
-
Difficulté 2/5 1-3 heures Accessibilité débutants 72/100
Les mainteneurs répondent en général sous 3 jours