Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Le proxy de développement est fourni avec une API web qui vous permet d’interagir avec le proxy par programmation. L’API est disponible sur l’adresse IP et le port spécifiés dans les paramètres du proxy.
Toutes les opérations d’API nécessitent un jeton du porteur. Le proxy de développement génère un jeton unique pour chaque instance en cours d’exécution et le stocke dans un fichier accessible uniquement à l’utilisateur qui a démarré l’instance. Obtenir le jeton à l’aide devproxy status ou devproxy api token. Lorsque la CI variable d’environnement est définie, utilisez devproxy api token parce que le proxy de développement omet le jeton de l’état et de la sortie de démarrage.
Pour utiliser un jeton connu au lieu d’un jeton généré, par exemple quand un autre outil démarre le proxy de développement et appelle son API, définissez la DEV_PROXY_API_TOKEN variable d’environnement avant de démarrer le proxy de développement ou transmettez-le à l’aide de l’option --env . La valeur doit comporter au moins 32 caractères, sans compter le remplissage de fin = et ne peut contenir que des lettres ASCII, des chiffres et des caractères -, , ., _+~, et , éventuellement /suivi du = remplissage. Le proxy de développement supprime les espaces blancs environnants. Si la valeur n’est pas valide, le proxy de développement ne démarre pas et se termine par une erreur. Le proxy de développement stocke toujours le jeton, donc devproxy status, devproxy api tokenet devproxy stop continue de fonctionner.
Incluez le jeton dans l’en-tête Authorization :
Authorization: Bearer <token>
Demandes sans retour 401 Unauthorizedde jeton valide . Les demandes de navigateur doivent également provenir d’une origine répertoriée dans le apiAllowedOrigins paramètre. D’autres origines retournent 403 Forbidden.
Opérations
La liste suivante présente les opérations d’API disponibles.
GET /proxy
Retourne une instance contenant des ProxyInfo informations sur l’instance de proxy de développement en cours d’exécution.
Exemple : Obtenir des informations sur l’instance de proxy de développement en cours d’exécution
Demande :
GET http://localhost:8897/proxy
Authorization: Bearer <token>
Réponse :
200 OK
{
"recording": false,
"configFile": "/Users/user/dev-proxy/devproxyrc.json"
}
POST /proxy
Contrôle l’instance de proxy de développement en cours d’exécution.
Exemple : démarrer l’enregistrement
Demande :
POST http://localhost:8897/proxy
Authorization: Bearer <token>
content-type: application/json
{
"recording": true
}
Réponse :
200 OK
{
"recording": true,
"configFile": "/Users/user/dev-proxy/devproxyrc.json"
}
Exemple : arrêter l’enregistrement
Demande :
POST http://localhost:8897/proxy
Authorization: Bearer <token>
content-type: application/json
{
"recording": false
}
Réponse :
200 OK
{
"recording": false,
"configFile": "/Users/user/dev-proxy/devproxyrc.json"
}
POST /proxy/jwtToken
Génère un jeton web JSON (JWT).
Demande :
POST http://localhost:8897/proxy/jwtToken
Authorization: Bearer <token>
Content-Type: application/json
{
"name": "Dev Proxy",
"audiences": [
"https://myserver.com"
],
"issuer": "dev-proxy",
"roles": [
"admin"
],
"scopes": [
"Post.Read",
"Post.Write"
],
"claims": {
"claim1": "value",
"claim2": "value"
},
"validFor": 60
}
Remarque
Les revendications inscrites (par exemple, iss, , subaud, expnbf, iat, , ) jtisont automatiquement ajoutées au jeton. Si vous spécifiez l’une de ces revendications dans la requête, l’API ignore les valeurs que vous fournissez.
Réponse :
200 OK
{
"token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1bmlxdWVfbmFtZSI6IkRldiBQcm94eSIsInN1YiI6IkRldiBQcm94eSIsImp0aSI6IjkyZjM5YzciLCJzY3AiOlsiUG9zdC5SZWFkIiwiUG9zdC5Xcml0ZSJdLCJyb2xlcyI6ImFkbWluIiwiY2xhaW0xIjoidmFsdWUiLCJjbGFpbTIiOiJ2YWx1ZSIsImF1ZCI6Imh0dHBzOi8vbXlzZXJ2ZXIuY29tIiwibmJmIjoxNzI3MTk4MjgyLCJleHAiOjE3MjcyMDE4ODIsImlhdCI6MTcyNzE5ODI4MiwiaXNzIjoiZGV2LXByb3h5In0.E_Gj9E58OrAh9uHgc-TW8DYfq8YHFrhaUTpKA4yXEIg"
}
GET /proxy/logs
Retourne la sortie du journal du proxy de développement. Équivalent de la logs commande. Ce point de terminaison est disponible uniquement lorsque le proxy de développement s’exécute en mode détaché. Sinon, l’API retourne 404 Not Found.
| Paramètre de requête. | Description | Default |
|---|---|---|
lines |
Nombre de lignes à retourner à partir de la fin du journal | 50 |
follow |
Quand true, diffuse de nouvelles lignes de journal en tant qu’événements envoyés par le serveur |
false |
since |
Retourne uniquement les lignes journalisées depuis la date et l’heure spécifiées. Utilisez une durée (par exemple, 30s, 5m1h1d) ou une date et une heure ISO 8601 (par exemple, 2026-01-24T14:00:00 ou ).2026-01-24T14:00:00Z Si l’horodatage n’inclut pas de décalage de fuseau horaire, le proxy de développement utilise le fuseau horaire local. |
n/a |
Le since paramètre filtre les lignes de journal par leur date et heure complètes, à la fois lors du retour des lignes de journal et lors de leur diffusion en continu. Le proxy de développement filtre chaque requête au moment où elle a démarré, de sorte qu’une demande qui a démarré avant l’heure spécifiée n’est pas retournée, même si elle s’est terminée ultérieurement.
Par défaut, l’API retourne les lignes de journal sous forme de texte brut. Pour obtenir un tableau JSON d’entrées de journal, définissez l’en-tête Acceptapplication/jsonsur . Pour diffuser des lignes de journal en tant qu’événements envoyés par le serveur, définissez l’en-tête Accepttext/event-stream sur ou sur followtrue.
Demande :
GET http://localhost:8897/proxy/logs?lines=10
Authorization: Bearer <token>
Réponse :
200 OK
content-type: text/plain
[last 10 lines of the Dev Proxy log]
POST /proxy/mockrequest
Déclenche une demande fictif. Équivaut à appuyer sur w dans la console où le proxy de développement est en cours d’exécution. L’API répond une fois la demande fictif terminée.
Demande :
POST http://localhost:8897/proxy/mockrequest
Authorization: Bearer <token>
Réponse :
204 No Content
GET /proxy/rootCertificate?format=crt
Télécharge la clé publique du certificat racine au format PEM (Privacy Enhanced Mail) utilisé par le proxy de développement pour déchiffrer les requêtes HTTPS. Cette API est utile lorsque vous souhaitez approuver le certificat racine sur votre hôte lors de l’exécution du proxy de développement dans un conteneur Docker.
À ce stade, le seul format pris en charge est crt. L’API retourne une erreur de requête incorrecte 400 si vous spécifiez un autre format ou si vous ne spécifiez pas du tout un format.
Demande :
GET http://localhost:8897/proxy/rootCertificate?format=crt
Authorization: Bearer <token>
Réponse :
content-type: application/x-x509-ca-cert
-----BEGIN CERTIFICATE-----
[base64 encoded certificate]
-----END CERTIFICATE-----
POST /proxy/stopproxy
Ferme normalement le proxy de développement.
Demande :
POST http://localhost:8897/proxy/stopproxy
Authorization: Bearer <token>
Réponse :
202 Accepted
Modèles
ProxyInfo
Informations sur l’instance de proxy de développement en cours d’exécution.
| Propriété | Type | Description |
|---|---|---|
recording |
boolean |
Indique si le proxy enregistre actuellement les demandes |
configFile |
string |
Chemin d’accès au fichier de configuration utilisé par le proxy de développement (en lecture seule) |
JwtOptions
Options de génération d’un jeton JWT.
| Propriété | Type | Description |
|---|---|---|
name |
string |
Nom de l’utilisateur à créer le jeton pour |
audiences |
string[] |
Audiences à créer le jeton pour |
issuer |
string |
Émetteur du jeton |
roles |
string[] |
Revendication de rôle à ajouter au jeton |
scopes |
string[] |
Revendication d’étendue à ajouter au jeton |
claims |
KeyValuePair |
Revendications à ajouter au jeton |
validFor |
number |
Durée (en minutes) pour laquelle le jeton est valide |
signingKey |
string |
Clé à utiliser pour signer le jeton. Doit comporter au moins 32 caractères. S’il n’est pas spécifié, utilise une clé générée de manière aléatoire. |
JwtInfo
Informations sur un jeton JWT.
| Propriété | Type | Description |
|---|---|---|
token |
string |
Jeton JWT |