flutter 使用retrofit
2021-02-24 本文已影响0人
夏天爱西瓜汁
问题:
1,执行flutter pub run build_runner build后没有生成.g.dart文件
2,执行flutter pub run build_runner build失败

原因
1,不生成.g.dart文件可能没有写@RestApi()
@RestApi()
abstract class AccountClient {
factory AccountClient(Dio dio, {String baseUrl}) = _AccountClient;
@POST(login_url)
Future<LoginResult> login(
@Query('account') String account,
@Query('password') String password,
@Query('clientId') String clientId
);
@POST(logout_url)
Future logout();
@PUT(editPwd_url)
Future<void> editPasswd(
@Part() String oldPassword,
@Part() String newPassword,
);
}
2,

详细使用见https://pub.flutter-io.cn/packages/retrofit
dev_dependencies中没有添加retrofit_generator
dev_dependencies:
flutter_test:
sdk: flutter
retrofit_generator: any
3,可能是build_runner的版本问题
最后修改如下

问题

原因

修改
在资源中添加秘钥文件

.yaml文件中添加
assets:
- assets/private_key.pem
final privateKey = await rootBundle.loadString('assets/private_key.pem');
问题:
error DioError [DioErrorType.DEFAULT]: FormatException: Unexpected character (at character 2)

原因:

解决:

