vexana 1.1.5+1 copy "vexana: ^1.1.5+1" to clipboard
vexana: ^1.1.5+1 copied to clipboard

outdated

flutter network helper project..

vexana #

Vexana is easy use network proccess with dio. You can do dynamic model parse, base error model, timeout and many utitliy functions.

Vexana-Game

Getting Started 🔥 #

Let's talk use detail.

Network Manager 😎 #

Have a a lot options: baseurl, logger, interceptors, base model etc.

INetworkManager  networkManager = NetworkManager(isEnableLogger: true, errorModel: UserErrorModel(),
 options: BaseOptions(baseUrl: "https://jsonplaceholder.typicode.com/"));

Model Parse ⚔️ #

You have give to first parse model, second result model. (Result model could be list, model or primitive)

final response =
await networkManager.fetch<Todo, List<Todo>>("/todos", parseModel: Todo(), method: RequestType.GET);

Network Model 🛒 #

You must be wrap model to INetoworkModel so we understand model has a toJson and toFrom properties.

class Todo extends INetworkModel<Todo>

Refresh Token ♻️ #

Many projects use authentication structure for mobile security (like a jwt). It could need to renew an older token when the token expires. This time have a refresh token options, and I do lock all requests until the token refresh process is complete.

Since i locked all requests, I am giving a new service instance.

INetworkManager  networkManager = NetworkManager(isEnableLogger: true, options: BaseOptions(baseUrl: "https://jsonplaceholder.typicode.com/",
onRefreshFail: () {  //Navigate to login },
 onRefreshToken: (error, newService) async {
    <!-- Write your refresh token business -->
    <!-- Then update error.req.headers to new token -->
    return error;
}));

Tasks #


  • Example project
  • Unit Test with json place holder
  • Unit Test with custom api
  • Make a unit test all layers.
  • Cache Option
  • Refresh Token Architecture
  • Usage Utility

License #

License

2020 created for @VB10

Youtube Channel #


Youtube

260
likes
0
pub points
91%
popularity

Publisher

verified publishervb10.dev

flutter network helper project..

Repository (GitHub)
View/report issues

License

unknown (LICENSE)

Dependencies

dio, flutter

More

Packages that depend on vexana