Dela via


Proxy-API

Dev Proxy levereras med ett webb-API som gör att du kan interagera med proxyn programmatiskt. API:et är tillgängligt på den port som anges i proxyinställningarna.

Swagger

API:et dokumenteras med Swagger. Du kan komma åt Swagger-användargränssnittet genom att navigera till http://localhost:<apiPort>/swagger i webbläsaren.

Operations

I följande lista visas tillgängliga API-åtgärder.

GET /proxy

Returnerar en instans av ProxyInfo med information om den dev proxyinstans som körs.

Exempel: Hämta information om den dev proxyinstans som körs för tillfället

Begäran:

GET http://localhost:8897/proxy

Svar:

200 OK

{
  "recording": false,
  "configFile": "/Users/user/dev-proxy/devproxyrc.json"
}

POST /proxy

Styr den dev proxyinstans som körs just nu.

Exempel: starta inspelning

Begäran:

POST http://localhost:8897/proxy
content-type: application/json

{
  "recording": true
}

Svar:

200 OK

{
  "recording": true,
  "configFile": "/Users/user/dev-proxy/devproxyrc.json"
}

Exempel: stoppa inspelning

Begäran:

POST http://localhost:8897/proxy
content-type: application/json

{
  "recording": false
}

Svar:

200 OK

{
  "recording": false,
  "configFile": "/Users/user/dev-proxy/devproxyrc.json"
}

POST /proxy/raisemockrequest

Skapar en falsk begäran. Motsvarande att trycka w i konsolen där Dev Proxy körs.

Begäran:

POST http://localhost:8897/proxy/raisemockrequest

Svar:

202 Accepted

POST /proxy/stopproxy

Stänger av Dev Proxy på ett korrekt sätt.

Begäran:

POST http://localhost:8897/proxy/stopproxy

Svar:

202 Accepted

POST /proxy/createJwtToken

Genererar en JWT-token.

Begäran:

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
}

Kommentar

Registrerade anspråk (t.ex. iss, sub, aud, exp, nbf, iat, ) jtiläggs automatiskt till i token. Om du anger något av dessa anspråk i begäran ignoreras de värden som du anger.

Svar:

200 OK

{
  "token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1bmlxdWVfbmFtZSI6IkRldiBQcm94eSIsInN1YiI6IkRldiBQcm94eSIsImp0aSI6IjkyZjM5YzciLCJzY3AiOlsiUG9zdC5SZWFkIiwiUG9zdC5Xcml0ZSJdLCJyb2xlcyI6ImFkbWluIiwiY2xhaW0xIjoidmFsdWUiLCJjbGFpbTIiOiJ2YWx1ZSIsImF1ZCI6Imh0dHBzOi8vbXlzZXJ2ZXIuY29tIiwibmJmIjoxNzI3MTk4MjgyLCJleHAiOjE3MjcyMDE4ODIsImlhdCI6MTcyNzE5ODI4MiwiaXNzIjoiZGV2LXByb3h5In0.E_Gj9E58OrAh9uHgc-TW8DYfq8YHFrhaUTpKA4yXEIg"
}

Modeller

ProxyInfo

Information om den dev proxy-instans som körs just nu.

Property Type Beskrivning
recording boolean Om proxyn för närvarande registrerar begäranden
configFile string Sökväg till konfigurationsfilen som Dev Proxy använder (skrivskyddad)

JwtOptions

Alternativ för att generera en JWT-token.

Property Type Beskrivning
name string Namnet på användaren som du vill skapa token för
audience string[] Målgrupperna som du vill skapa token för
issuer string[] Utfärdaren av token
roles string[] Ett rollanspråk att lägga till i token
scopes string[] Ett omfångsanspråk som ska läggas till i token
claims KeyValuePair Anspråk att lägga till i token
validFor number Varaktigheten (i minuter) för vilken token är giltig
signingKey string Nyckeln som ska användas för att signera token. Måste vara minst 32 tecken långt. Om det inte anges använder du en slumpmässigt genererad nyckel.

JwtInfo

Information om en JWT-token.

Property Type Beskrivning
token string JWT-token