Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Usar o Dev Proxy é a maneira mais fácil de simular uma API. Se você está criando o front-end e a API ainda não está pronta, se precisa integrar seu back-end a um serviço externo ou se deseja testar seu aplicativo com respostas diferentes, o Dev Proxy pode ajudá-lo a simular respostas de API. Ao integrar sua API com serviços de nuvem, você precisa expor sua API pela Internet para que o serviço de nuvem possa acessá-la. Para expor respostas simuladas pelo Dev Proxy na internet, use Dev Tunnels. Este artigo explica como configurar respostas simuladas para serem expostas na Internet usando Dev Tunnels.
Definir respostas simuladas
Para expor respostas simuladas pelo Dev Proxy na internet, comece por configurar as simulações.
Importante
Neste momento, os Dev Tunnels suportam apenas a exposição de respostas simuladas HTTP através da Internet.
Criar respostas fictícias
Crie um arquivo chamado mocks.json que contenha as respostas simuladas para sua API personalizada. Por exemplo, para simular uma GET solicitação para http://api.contoso.com/products, defina:
{
"$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v1.0.0/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
}
]
}
}
]
}
Você também pode simular erros, respostas binárias ou respostas condicionais usando statusCode, nthou bodyFragment.
Configurar o MockResponsePlugin
Crie um arquivo de configuração do Dev Proxy chamado devproxyrc.json e habilite o MockResponsePlugin:
{
"$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v1.0.0/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"
}
}
Importante
Para corresponder a vários endpoints, utilize caracteres universais em urlsToWatch. Para garantir a correspondência correta, coloque simulações mais específicas primeiro no seu mocks.json.
Verificar configuração
Verifique se as simulações estão funcionando corretamente executando o Proxy de Desenvolvimento e enviando solicitações para a API simulada.
Inicie o Dev Proxy, supondo que você salvou a configuração do Dev Proxy em um arquivo chamado devproxyrc.json no diretório de trabalho atual:
devproxy
Teste seu simulado enviando uma solicitação através do Dev Proxy:
curl -x http://127.0.0.1:8000 http://api.contoso.com/products
Você deve receber a lista de produtos simulados definida em mocks.json.
Exponha a API simulada com túneis de desenvolvimento
Para expor respostas simuladas na Internet, inicie um túnel dev mapeado para a porta do Proxy Dev. Configure o túnel para usar o nome de anfitrião configurado para a API simulada.
Advertência
Permitir o acesso anônimo a um túnel de desenvolvimento significa que qualquer pessoa na Internet pode se conectar ao seu servidor local, se puder adivinhar o ID do túnel de desenvolvimento.
devtunnel host -p 8000 -a --host-header api.contoso.com
Este comando mapeia a porta Dev Proxy para uma URL HTTP pública. Agora você pode acessar sua API simulada de qualquer lugar:
curl http://<your-tunnel-id>-8000.<region>.devtunnels.ms/products