Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Dev Proxy wordt geleverd met een web-API waarmee u programmatisch met de proxy kunt werken. De API is beschikbaar op het IP-adres en de poort die is opgegeven in de proxy-instellingen.
Voor alle API-bewerkingen is een Bearer-token vereist. Dev Proxy genereert een uniek token voor elk actief exemplaar en slaat het op in een bestand dat alleen toegankelijk is voor de gebruiker die het exemplaar heeft gestart. Haal het token op met behulp van devproxy status of devproxy api token. Wanneer de CI omgevingsvariabele is ingesteld, gebruikt devproxy api token u deze omdat Dev Proxy het token weglaat uit de status en opstartuitvoer.
Neem het token op in de Authorization koptekst:
Authorization: Bearer <token>
Aanvragen zonder geldig token retourneren 401 Unauthorized. Browseraanvragen moeten ook afkomstig zijn van een oorsprong die wordt vermeld in de apiAllowedOrigins instelling. Andere oorsprongen retourneren 403 Forbidden.
Operations
De volgende lijst bevat beschikbare API-bewerkingen.
GET /proxy
Retourneert een exemplaar van ProxyInfo met informatie over het momenteel actieve Dev Proxy-exemplaar.
Voorbeeld: Informatie ophalen over het momenteel actieve Dev Proxy-exemplaar
Aanvraag:
GET http://localhost:8897/proxy
Authorization: Bearer <token>
Respons:
200 OK
{
"recording": false,
"configFile": "/Users/user/dev-proxy/devproxyrc.json"
}
POST /proxy
Hiermee bepaalt u het momenteel actieve Dev Proxy-exemplaar.
Voorbeeld: opname starten
Aanvraag:
POST http://localhost:8897/proxy
Authorization: Bearer <token>
content-type: application/json
{
"recording": true
}
Respons:
200 OK
{
"recording": true,
"configFile": "/Users/user/dev-proxy/devproxyrc.json"
}
Voorbeeld: opname stoppen
Aanvraag:
POST http://localhost:8897/proxy
Authorization: Bearer <token>
content-type: application/json
{
"recording": false
}
Respons:
200 OK
{
"recording": false,
"configFile": "/Users/user/dev-proxy/devproxyrc.json"
}
POST /proxy/jwtToken
Hiermee wordt een JSON-webtoken (JWT) gegenereerd.
Aanvraag:
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
}
Notitie
Geregistreerde claims (bijvoorbeeldiss, , subaud, exp, , nbf, , iat) jtiworden automatisch toegevoegd aan het token. Als u een van deze claims in de aanvraag opgeeft, negeert de API de waarden die u opgeeft.
Respons:
200 OK
{
"token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1bmlxdWVfbmFtZSI6IkRldiBQcm94eSIsInN1YiI6IkRldiBQcm94eSIsImp0aSI6IjkyZjM5YzciLCJzY3AiOlsiUG9zdC5SZWFkIiwiUG9zdC5Xcml0ZSJdLCJyb2xlcyI6ImFkbWluIiwiY2xhaW0xIjoidmFsdWUiLCJjbGFpbTIiOiJ2YWx1ZSIsImF1ZCI6Imh0dHBzOi8vbXlzZXJ2ZXIuY29tIiwibmJmIjoxNzI3MTk4MjgyLCJleHAiOjE3MjcyMDE4ODIsImlhdCI6MTcyNzE5ODI4MiwiaXNzIjoiZGV2LXByb3h5In0.E_Gj9E58OrAh9uHgc-TW8DYfq8YHFrhaUTpKA4yXEIg"
}
POST /proxy/mockrequest
Er wordt een mock-aanvraag ingediend. Equivalent van drukken op w in de console waarop Dev Proxy wordt uitgevoerd.
Aanvraag:
POST http://localhost:8897/proxy/mockrequest
Authorization: Bearer <token>
Respons:
202 Accepted
GET /proxy/rootCertificate?format=crt
Hiermee downloadt u de openbare sleutel van het basiscertificaat in PEM-indeling (Privacy Enhanced Mail) die door Dev Proxy wordt gebruikt om HTTPS-aanvragen te ontsleutelen. Deze API is handig als u het basiscertificaat op uw host wilt vertrouwen tijdens het uitvoeren van Dev Proxy in een Docker-container.
Op dit moment is crtde enige ondersteunde indeling. De API retourneert een fout met 400 ongeldige aanvragen als u een andere indeling opgeeft of helemaal geen indeling opgeeft.
Aanvraag:
GET http://localhost:8897/proxy/rootCertificate?format=crt
Authorization: Bearer <token>
Respons:
content-type: application/x-x509-ca-cert
-----BEGIN CERTIFICATE-----
[base64 encoded certificate]
-----END CERTIFICATE-----
POST /proxy/stopproxy
De dev-proxy wordt op een juiste manier afgesloten.
Aanvraag:
POST http://localhost:8897/proxy/stopproxy
Authorization: Bearer <token>
Respons:
202 Accepted
Modellen
ProxyInfo
Informatie over het momenteel actieve Dev Proxy-exemplaar.
| Eigenschap | Type | Description |
|---|---|---|
recording |
boolean |
Of de proxy momenteel aanvragen registreert |
configFile |
string |
Pad naar het configuratiebestand dat dev proxy gebruikt (alleen-lezen) |
JwtOptions
Opties voor het genereren van een JWT-token.
| Eigenschap | Type | Description |
|---|---|---|
name |
string |
De naam van de gebruiker voor het maken van het token |
audience |
string[] |
De doelgroepen voor het maken van het token voor |
issuer |
string[] |
De uitgever van het token |
roles |
string[] |
Een rolclaim die moet worden toegevoegd aan het token |
scopes |
string[] |
Een bereikclaim die moet worden toegevoegd aan het token |
claims |
KeyValuePair |
Claims om toe te voegen aan het token |
validFor |
number |
De duur (in minuten) waarvoor het token geldig is |
signingKey |
string |
De sleutel die moet worden gebruikt om het token te ondertekenen. Moet minstens 32 tekens lang zijn. Als dit niet is opgegeven, wordt een willekeurig gegenereerde sleutel gebruikt. |
JwtInfo
Informatie over een JWT-token.
| Eigenschap | Type | Description |
|---|---|---|
token |
string |
Het JWT-token |