Freigeben über


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, expaud, nbf, iatjti) 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