Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Dev Proxy include un'API Web che consente di interagire con il proxy a livello di codice. L'API è disponibile sulla porta specificata nelle impostazioni proxy.
Swagger
L'API è documentata usando Swagger. È possibile accedere all'interfaccia utente di Swagger passando a http://localhost:<apiPort>/swagger nel browser.
Operazioni
L'elenco seguente mostra le operazioni API disponibili.
GET /proxy
Restituisce un'istanza di ProxyInfo con informazioni sull'istanza di Dev Proxy attualmente in esecuzione.
Esempio: Ottenere informazioni sull'istanza del proxy di sviluppo attualmente in esecuzione
Richiesta:
GET http://localhost:8897/proxy
Risposta:
200 OK
{
"recording": false,
"configFile": "/Users/user/dev-proxy/devproxyrc.json"
}
POST /proxy
Controlla l'istanza di Dev Proxy attualmente in esecuzione.
Esempio: avviare la registrazione
Richiesta:
POST http://localhost:8897/proxy
content-type: application/json
{
"recording": true
}
Risposta:
200 OK
{
"recording": true,
"configFile": "/Users/user/dev-proxy/devproxyrc.json"
}
Esempio: arrestare la registrazione
Richiesta:
POST http://localhost:8897/proxy
content-type: application/json
{
"recording": false
}
Risposta:
200 OK
{
"recording": false,
"configFile": "/Users/user/dev-proxy/devproxyrc.json"
}
POST /proxy/jwtToken
Genera un token JSON Web (JWT).
Richiesta:
POST http://localhost:8897/proxy/jwtToken
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
}
Nota
Le attestazioni registrate (ad esempio, iss, subaud, exp, nbf, , iat) jtivengono aggiunte automaticamente al token. Se si specifica una di queste attestazioni nella richiesta, l'API ignora i valori specificati.
Risposta:
200 OK
{
"token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1bmlxdWVfbmFtZSI6IkRldiBQcm94eSIsInN1YiI6IkRldiBQcm94eSIsImp0aSI6IjkyZjM5YzciLCJzY3AiOlsiUG9zdC5SZWFkIiwiUG9zdC5Xcml0ZSJdLCJyb2xlcyI6ImFkbWluIiwiY2xhaW0xIjoidmFsdWUiLCJjbGFpbTIiOiJ2YWx1ZSIsImF1ZCI6Imh0dHBzOi8vbXlzZXJ2ZXIuY29tIiwibmJmIjoxNzI3MTk4MjgyLCJleHAiOjE3MjcyMDE4ODIsImlhdCI6MTcyNzE5ODI4MiwiaXNzIjoiZGV2LXByb3h5In0.E_Gj9E58OrAh9uHgc-TW8DYfq8YHFrhaUTpKA4yXEIg"
}
POST /proxy/mockrequest
Genera una richiesta fittizia. Equivalente alla pressione di w nella console in cui è in esecuzione Dev Proxy.
Richiesta:
POST http://localhost:8897/proxy/mockrequest
Risposta:
202 Accepted
GET /proxy/rootCertificate?format=crt
Scarica la chiave pubblica del certificato radice in formato PEM (Privacy Enhanced Mail) usata da Dev Proxy per decrittografare le richieste HTTPS. Questa API è utile quando si vuole considerare attendibile il certificato radice nell'host durante l'esecuzione di Dev Proxy in un contenitore Docker.
Al momento, l'unico formato supportato è crt. L'API restituisce un errore 400 Richiesta non valida se si specifica un altro formato o non si specifica un formato.
Richiesta:
GET http://localhost:8897/proxy/rootCertificate?format=crt
Risposta:
content-type: application/x-x509-ca-cert
-----BEGIN CERTIFICATE-----
[base64 encoded certificate]
-----END CERTIFICATE-----
POST /proxy/stopproxy
Arresta normalmente il proxy di sviluppo.
Richiesta:
POST http://localhost:8897/proxy/stopproxy
Risposta:
202 Accepted
Modelli
ProxyInfo
Informazioni sull'istanza del proxy di sviluppo attualmente in esecuzione.
| Proprietà | Type | Descrizione |
|---|---|---|
recording |
boolean |
Indica se il proxy sta registrando le richieste |
configFile |
string |
Percorso del file di configurazione usato da Dev Proxy (sola lettura) |
JwtOptions
Opzioni per la generazione di un token JWT.
| Proprietà | Type | Descrizione |
|---|---|---|
name |
string |
Nome dell'utente per cui creare il token |
audience |
string[] |
Destinatari per cui creare il token |
issuer |
string[] |
Autorità emittente del token |
roles |
string[] |
Attestazione del ruolo da aggiungere al token |
scopes |
string[] |
Attestazione di ambito da aggiungere al token |
claims |
KeyValuePair |
Attestazioni da aggiungere al token |
validFor |
number |
Durata (in minuti) per la quale il token è valido |
signingKey |
string |
Chiave da usare per firmare il token. Deve contenere almeno 32 caratteri. Se non specificato, usa una chiave generata in modo casuale. |
JwtInfo
Informazioni su un token JWT.
| Proprietà | Type | Descrizione |
|---|---|---|
token |
string |
Token JWT |