Flutter の http リクエストに Chopper を使用していますが、私の知る限り、Chopper クライアントを作成するには 2 つの方法があります。1 つは、その配列にサービスを追加してから公開することです。
// my_chopper_client.dart
static ChopperClient getClient() {
final chopper = ChopperClient(
baseUrl: "https://example.com/",
services: [
ServiceOne.create(),
ServiceTwo.create(),
ServiceThree.create()
],
converter: JsonConverter()
);
return chopper;
}
// Some other file.dart
void login() {
ChopperClient client = MyChopperClient.getClient();
var serviceTwo = client.getService<ServiceTwo>();
var resp = await serviceTwo({"email": "example@mail.io", "password": "123"});
print(resp.body);
}
もう 1 つは、サービスごとに Chopper クライアントの新しいインスタンスを作成することです。
// service_two.dart
static ServiceTwo create() {
final client = ChopperClient(
services: [
_$ServiceTwo(),
],
converter: JsonConverter(),
);
return _$ServiceTwo(client);
}
// some other file.dart
void login() async {
var serviceTwo = ServiceTwo.create();
var resp = await serviceTwo.login({"email": "example@mail.io", "password": "123"});
print(resp.body);
}
私の質問は次のとおりです。最高のパフォーマンスを得るには、どちらの方法が良いですか? 配列アプローチはより多くのメモリを使用する可能性があるようです。前もって感謝します!