Proxy-API
Dev Proxy enthält eine Web-API, mit der Sie programmgesteuert mit dem Proxy interagieren können. Die API ist für den port verfügbar, der in den Proxyeinstellungen angegeben ist.
Swagger
Die API wird mit Swagger dokumentiert. Sie können auf die Benutzeroberfläche von Swagger zugreifen, indem Sie in Ihrem Browser navigieren http://localhost:<apiPort>/swagger
.
Vorgänge
In der folgenden Liste sind verfügbare API-Vorgänge aufgeführt.
GET /proxy
Gibt eine Instanz mit ProxyInfo
Informationen zur derzeit ausgeführten Dev Proxy-Instanz zurück.
Beispiel: Abrufen von Informationen zur derzeit ausgeführten Dev Proxy-Instanz
Anforderung:
GET http://localhost:8897/proxy
Antwort:
200 OK
{
"recording": false,
"configFile": "/Users/user/dev-proxy/devproxyrc.json"
}
POST /proxy
Steuert die derzeit ausgeführte Dev Proxy-Instanz.
Beispiel: Starten der Aufzeichnung
Anforderung:
POST http://localhost:8897/proxy
content-type: application/json
{
"recording": true
}
Antwort:
200 OK
{
"recording": true,
"configFile": "/Users/user/dev-proxy/devproxyrc.json"
}
Beispiel: Beenden der Aufzeichnung
Anforderung:
POST http://localhost:8897/proxy
content-type: application/json
{
"recording": false
}
Antwort:
200 OK
{
"recording": false,
"configFile": "/Users/user/dev-proxy/devproxyrc.json"
}
POST /proxy/raisemockrequest
Löst eine simulierte Anforderung aus. Entspricht dem Drücken von w in der Konsole, in der Dev Proxy ausgeführt wird.
Anforderung:
POST http://localhost:8897/proxy/raisemockrequest
Antwort:
202 Accepted
POST /proxy/stopproxy
Schalten Sie Dev-Proxy ordnungsgemäß herunter.
Anforderung:
POST http://localhost:8897/proxy/stopproxy
Antwort:
202 Accepted
POST /proxy/createJwtToken
Generiert ein JWT-Token.
Anforderung:
POST http://localhost:8897/proxy/createJwtToken
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
}
Hinweis
Registrierte Ansprüche (z. B. iss
, , sub
, exp
aud
, nbf
, iat
jti
) werden automatisch zum Token hinzugefügt. Wenn Sie einen dieser Ansprüche in der Anforderung angeben, werden die von Ihnen bereitgestellten Werte ignoriert.
Antwort:
200 OK
{
"token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1bmlxdWVfbmFtZSI6IkRldiBQcm94eSIsInN1YiI6IkRldiBQcm94eSIsImp0aSI6IjkyZjM5YzciLCJzY3AiOlsiUG9zdC5SZWFkIiwiUG9zdC5Xcml0ZSJdLCJyb2xlcyI6ImFkbWluIiwiY2xhaW0xIjoidmFsdWUiLCJjbGFpbTIiOiJ2YWx1ZSIsImF1ZCI6Imh0dHBzOi8vbXlzZXJ2ZXIuY29tIiwibmJmIjoxNzI3MTk4MjgyLCJleHAiOjE3MjcyMDE4ODIsImlhdCI6MTcyNzE5ODI4MiwiaXNzIjoiZGV2LXByb3h5In0.E_Gj9E58OrAh9uHgc-TW8DYfq8YHFrhaUTpKA4yXEIg"
}
Modelle
ProxyInfo
Informationen zur derzeit ausgeführten Dev Proxy-Instanz.
Eigenschaft | Typ | Beschreibung |
---|---|---|
recording |
boolean |
Gibt an, ob der Proxy zurzeit Anforderungen aufzeichnet |
configFile |
string |
Pfad zur Konfigurationsdatei, die Dev Proxy verwendet (schreibgeschützt) |
JwtOptions
Optionen zum Generieren eines JWT-Tokens.
Eigenschaft | Typ | Beschreibung |
---|---|---|
name |
string |
Der Name des Benutzers, für den das Token erstellt werden soll |
audience |
string[] |
Die Zielgruppen, für die das Token erstellt werden soll |
issuer |
string[] |
Der Aussteller des Tokens |
roles |
string[] |
Ein Rollenanspruch, der dem Token hinzugefügt werden soll |
scopes |
string[] |
Ein Bereichsanspruch, der dem Token hinzugefügt werden soll |
claims |
KeyValuePair |
Ansprüche, die dem Token hinzugefügt werden sollen |
validFor |
number |
Die Dauer (in Minuten), für die das Token gültig ist |
signingKey |
string |
Der Schlüssel, der zum Signieren des Tokens verwendet werden soll. Muss mindestens 32 Zeichen lang sein. Wenn nicht angegeben, wird ein zufällig generierter Schlüssel verwendet. |
JwtInfo
Informationen zu einem JWT-Token.
Eigenschaft | Typ | Beschreibung |
---|---|---|
token |
string |
Das JWT-Token |