Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Begäranden misslyckas med ett slumpmässigt valt fel från en fil som innehåller falska fel.
Konfigurationsexempel
{
"$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v4.0.0/rc.schema.json",
"plugins": [
{
"name": "GenericRandomErrorPlugin",
"enabled": true,
"pluginPath": "~appFolder/plugins/DevProxy.Plugins.dll",
"configSection": "genericRandomErrorPlugin"
}
],
"urlsToWatch": [
"https://api.openai.com/*"
],
"genericRandomErrorPlugin": {
"$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v4.0.0/genericrandomerrorplugin.schema.json",
"errorsFile": "errors.json"
}
}
Konfigurationsegenskaper
| Egenskap | Beskrivning | Standard |
|---|---|---|
errorsFile |
Sökväg till filen som innehåller felsvar. | errors.json |
rate |
Procentandelen begäranden om att misslyckas med ett slumpmässigt fel. Värde mellan 0 och 100. | 50 |
retryAfterInSeconds |
Antalet sekunder att vänta innan du försöker begära igen. Ingår i Retry-After-svarsrubriken för dynamisk begränsning. |
5 |
Kommandoradsalternativ
| Namn | Beskrivning | Standard |
|---|---|---|
-f, --failure-rate <failure rate> |
Procentandelen begäranden om att misslyckas med ett slumpmässigt fel. Värde mellan 0 och 100. | 50 |
Anmärkningar
Svarsdel
Om du anger body egenskapen för ett felsvar till ett JSON-objekt eller en matris serialiserar Dev Proxy det till JSON. Om du ställer in den på en sträng skickar Dev Proxy strängen as-is, utan omgivande citattecken. En sträng som börjar med @ behandlas som en sökväg till en fil, i förhållande till felfilen, med svarstexten. Eftersom Dev Proxy som standard Content-Type anger rubriken till application/json, anger du rubriken så att den Content-Type matchar ditt innehåll när du returnerar icke-JSON-innehåll, till exempel text/plain.
Värden per svar Retry-After
Dev Proxy matchar @dynamic i Retry-After rubriken för statuskod, till exempel 429, 503eller 529. Den matchar rubriknamnet oavsett skiftläge. När den löser @dynamicregistrerar den även begäran med RetryAfterPlugin, som rapporterar begäranden som appen skickar innan Retry-After tiden är slut.
Som standard Retry-After använder huvudet det globala retryAfterInSeconds värdet. Du kan åsidosätta det här värdet per svar med hjälp av syntaxen @dynamic=N i felsvarsfilen, där N är antalet sekunder att vänta innan du försöker igen.
{
"$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v4.0.0/genericrandomerrorplugin.errorsfile.schema.json",
"errors": [
{
"request": {
"url": "https://api.openai.com/*"
},
"responses": [
{
"statusCode": 429,
"headers": [
{
"name": "Retry-After",
"value": "@dynamic=17"
}
],
"body": {
"error": {
"message": "Rate limit exceeded. Wait 17 seconds."
}
}
}
]
}
]
}
I det här exemplet Retry-After använder 17 rubriken sekunder för det här svaret, oavsett den globala retryAfterInSeconds inställningen. Värdet ökar för varje efterföljande begränsad begäran, precis som med den oformaterade @dynamic token.
Standardrubrik Content-Type
Om ett felsvar har en body och inte definierar ett Content-Type huvud returnerar Dev Proxy svaret med Content-Type: application/json huvudet. Om du vill returnera en annan innehållstyp lägger du till Content-Type huvudet i svaret i felfilen. Dev Proxy använder det värde som du anger.