dpop_flutter_dio 0.1.1 copy "dpop_flutter_dio: ^0.1.1" to clipboard
dpop_flutter_dio: ^0.1.1 copied to clipboard

Dio integration for dpop_flutter - a DpopInterceptor that attaches DPoP headers to every request and retries once on a DPoP nonce challenge.

example/main.dart

import 'package:dio/dio.dart';
import 'package:dpop_flutter/dpop_flutter.dart';
import 'package:dpop_flutter_dio/dpop_flutter_dio.dart';

/// A stub standing in for your app's real token storage/refresh logic.
class _StaticTokenProvider implements AccessTokenProvider {
  const _StaticTokenProvider(this._token);

  final String _token;

  @override
  Future<String?> getAccessToken() async => _token;
}

/// Demonstrates [DpopInterceptor]: attaches DPoP headers to every Dio
/// request and retries once on a `DPoP-Nonce` challenge.
Future<void> main() async {
  final dpop = DpopClient(keyStore: SecureDpopKeyStore());
  await dpop.initialize();

  final dio = Dio();
  dio.interceptors.add(
    DpopInterceptor(
      dpop: dpop,
      dio: dio,
      tokenProvider:
          const _StaticTokenProvider('replace-with-a-real-access-token'),
    ),
  );

  final response = await dio.get<String>('https://api.example.com/profile');
  // ignore: avoid_print
  print('${response.statusCode}: ${response.data}');
}
1
likes
160
points
33
downloads

Documentation

API reference

Publisher

unverified uploader

Weekly Downloads

Dio integration for dpop_flutter - a DpopInterceptor that attaches DPoP headers to every request and retries once on a DPoP nonce challenge.

Repository (GitHub)
View/report issues
Contributing

Topics

#dpop #oauth #dio

License

MIT (license)

Dependencies

dio, dpop_flutter, flutter

More

Packages that depend on dpop_flutter_dio