Uwaga
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Używanie Dev Proxy to najprostszy sposób pozorowania interfejsu API. Niezależnie od tego, czy tworzysz front-end, a interfejs API nie jest jeszcze gotowy, czy musisz zintegrować swoje zaplecze z usługą zewnętrzną, albo chcesz przetestować aplikację z różnymi odpowiedziami, Dev Proxy może pomóc w symulacji odpowiedzi API. Po zintegrowaniu interfejsu API z usługami w chmurze należy uwidocznić interfejs API w Internecie, aby usługa w chmurze mogła uzyskać do niego dostęp. Aby uwidocznić pozorowane odpowiedzi symulowane przez serwer proxy deweloperów w Internecie, użyj tuneli deweloperskich. W tym artykule wyjaśniono, jak skonfigurować pozorne odpowiedzi, które mają być uwidocznione w Internecie przy użyciu tuneli deweloperskich.
Definiowanie pozornych odpowiedzi
Aby uwidocznić symulowane odpowiedzi przez Dev Proxy w Internecie, zacznij od skonfigurowania odpowiedzi próbnych.
Ważne
W tej chwili tunele deweloperskie obsługują tylko udostępnianie symulowanych odpowiedzi HTTP w Internecie.
Tworzenie pozornych odpowiedzi
Utwórz plik o nazwie mocks.json
zawierający pozorne odpowiedzi dla niestandardowego interfejsu API. Aby zasymulować na przykład żądanie GET
do http://api.contoso.com/products
, zdefiniuj:
{
"$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v0.29.2/mockresponseplugin.mocksfile.schema.json",
"mocks": [
{
"request": {
"url": "http://api.contoso.com/products",
"method": "GET"
},
"response": {
"headers": [
{
"name": "content-type",
"value": "application/json"
}
],
"body": [
{
"id": 1,
"name": "Contoso Coffee Beans",
"price": 12.99
},
{
"id": 2,
"name": "Contoso Espresso Machine",
"price": 249.99
}
]
}
}
]
}
Możesz również symulować błędy, odpowiedzi binarne lub odpowiedzi warunkowe przy użyciu metody statusCode
, nth
lub bodyFragment
.
Skonfiguruj MockResponsePlugin
Utwórz plik konfiguracji serwera proxy dev o nazwie devproxyrc.json
i włącz polecenie MockResponsePlugin
:
{
"$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v0.29.2/rc.schema.json",
"plugins": [
{
"name": "MockResponsePlugin",
"enabled": true,
"pluginPath": "~appFolder/plugins/DevProxy.Plugins.dll",
"configSection": "mocksPlugin"
}
],
"urlsToWatch": [
"http://api.contoso.com/*"
],
"mocksPlugin": {
"mocksFile": "mocks.json"
}
}
Ważne
Aby dopasować wiele punktów końcowych, użyj symboli wieloznacznych w pliku urlsToWatch
. Aby zapewnić poprawne dopasowanie, najpierw umieść bardziej szczegółowe makiety w obiekcie mocks.json
.
Weryfikowanie konfiguracji
Sprawdź, czy makiety działają poprawnie, uruchamiając Dev Proxy i wysyłając żądania do makietowanego API.
Uruchom serwer proxy deweloperów, zakładając, że konfiguracja serwera proxy deweloperów została zapisana w pliku o nazwie devproxyrc.json
w bieżącym katalogu roboczym:
devproxy
Przetestuj swojego mock’a, wysyłając żądanie za pośrednictwem Proxy deweloperskiego:
curl -x http://127.0.0.1:8000 http://api.contoso.com/products
Powinna zostać wyświetlona próbna lista produktów zdefiniowana w mocks.json
.
Uwidacznianie pozorowego interfejsu API za pomocą tuneli deweloperskich
Aby uwidocznić symulowane odpowiedzi w całym internecie, uruchom tunel deweloperski zamapowany na port serwera Proxy Dev. Skonfiguruj tunel tak, aby używał nazwy hosta skonfigurowanej dla symulowanego interfejsu API.
Ostrzeżenie
Zezwolenie na anonimowy dostęp do tunelu deweloperskiego oznacza, że każda osoba w Internecie może nawiązać połączenie z serwerem lokalnym, jeśli może odgadnąć identyfikator tunelu deweloperskiego.
devtunnel host -p 8000 -a --host-header api.contoso.com
To polecenie mapuje port serwera proxy dewelopera na publiczny adres URL HTTP. Teraz możesz uzyskać dostęp do pozornego interfejsu API z dowolnego miejsca:
curl http://<your-tunnel-id>-8000.<region>.devtunnels.ms/products