Orientação gerada a partir de informações públicas. Apenas para referência.
Um interceptor do Dio que melhora o depuração ao imprimir de forma formatada as requisições e respostas HTTP no console. Ajuda os desenvolvedores a inspecionar rapidamente fluxos de dados, cabeçalhos e códigos de status durante o desenvolvimento. O pacote se integra perfeitamente ao Dio, um cliente HTTP popular para Dart, e é compatível com todas as principais plataformas, incluindo Android, iOS, Web, macOS, Windows e Linux. Ideal para solucionar problemas de interações com APIs sem precisar de ferramentas externas.
Casos de uso
Depuração de chamadas de API no desenvolvimento
Inspeção de cargas úteis de solicitação/resposta
Monitorando cabeçalhos e códigos de status HTTP
Melhorando a produtividade do desenvolvedor durante a integração da API
Registro em tempo real da atividade de rede
Principais recursos
Saída JSON formatada
Suporta tanto solicitações quanto respostas
Integração fácil com Dio
Compatibilidade multiplataforma
Nível de registro configurável
Configuração mínima necessária
Indicado para
Desenvolvedores front-end usando Dio
Equipes focadas na depuração rápida de API
Aplicações que exigem inspeção de rede transparente
Desenvolvedores trabalhando em serviços RESTful
Projetos onde os registros em tempo real do console são benéficos
Considerações
Não recomendado para builds de produção
Pode afet levemente o desempenho devido ao registro
Requer configuração manual para desativar no modo de lançamento
Os logs podem expor dados sensíveis se não forem filtrados
Limitado à saída do console, sem suporte a arquivos ou registro externo
README original
Snapshot do README original do repositório-fonte vinculado. Consulte o repositório para o conteúdo mais recente.
A simple Dio interceptor for pretty printing the HTTP request/response (using the awesome
package Logger) to be printed in the console for easier debugging and sharing.
Different content types are supported and pretty printed such as:
application/json
application/x-www-form-urlencoded
text/html
Getting started
1- Install the package in your project:
flutter pub get dio_http_formatter
or if not for Flutter:
pub get dio_http_formatter
2- Add the interceptor to your Dio instance like:
final _dio = Dio();
_dio.interceptors.add(HttpFormatter());
Dio Version Map
For a certain version of Dio, use the following table to find the correct version of this package to use:
Dio Version
Package Version
4.x.x
2.x.x
5.x.x
3.x.x
Options
Below are the optional parameters that can be specified for the formatter to customize what and how the HTTP request and response is printed.
Property
Type
Default Value
includeRequest
bool
true
includeRequestHeaders
bool
true
includeRequestQueryParams
bool
true
includeRequestBody
bool
true
includeResponse
bool
true
includeResponseHeaders
bool
true
includeResponseBody
bool
true
logger
Logger
PrettyPrinter()
loggingFilter
LoggingFilter
null
Logging Filter
The HTTPFormatter has support for filtering whether to log a request/response or not. For example:
final dio = Dio();
dio.interceptors.add(
HttpFormatter(
loggingFilter: (request, response, error) {
// We don't want to print the request/response when 201 is returnedif (response?.statusCode == 201) {
returnfalse;
}
// Otherwise, the logs should printreturntrue;
},
),
);
[!WARNING] httpLoggerFilter is now deprecated and it's highly encouraged to move to the new loggingFilter. httpLoggerFilter will be removed in the next major version.