Comments (4)
It's little fix.
- Save old headers;
- Add new headers;
- Send request
- Wait response
- Remove new headers
- Return response
Future<http.StreamedResponse> send(http.BaseRequest request) async {
final token = await _tokenRepository.getIdToken();
request.headers['Authorization'] = 'Bearer $token';
final response = await _inner.send(request);
request.headers.remove('Authorization');
return response;
}
from brick.
But if you want to use providerArgs with custom httpClient, you should add
final defaultHeaders = <String, String>{
'Content-Type': 'application/json; charset=utf-8'
};
final providerArgs = <String, dynamic>{
'request': 'PUT',
...defaultHeaders,
};
...
restProvider: RestProvider(client: client)..defaultHeaders = defaultHeaders,
from brick.
Thanks @polRk for helping out with this one!
@pkozlovskiy Are you subclassing RequestSqliteCache
? It sounds like you might be if you're mutating the headers on subsequent retries.
In this use case, I would instead recommend implements
over extends
so that you're not storing the headers or making SQLite queries based on the headers.
I hadn't anticipated this sort of usage, so my other suggestion is to open a PR and make _findRequestInDatabase
a @visibleForOverriding
method. That way, you'll be able to ignore the headers column (since these change) in subsequent lookups and you'll be able to extends RequestSqliteCache
without rewriting a lot of the functionality. I also think making headersForQuery
a method that's @visibleForOverriding
instead of @protected
would be useful.
from brick.
@pkozlovskiy With #122 merged I'm going to close, please reopen if you're still having trouble
from brick.
Related Issues (20)
- Need to run build_runner twice for correct schema.g.dart generation HOT 1
- Discussion: cache busting HOT 4
- **Migrating to Brick 3 from Brick 2**
- Casting issue with latest example code. HOT 2
- Migration not created for Sqlite Database when extending Model after upgrade to 3.0 HOT 4
- brick.g.dart is not generated HOT 7
- Example doesn't work and doesn't show server errors HOT 14
- how to prevent an attribute from being generated for the ToRest adapter HOT 1
- Build_runner runs with problems HOT 7
- How to send the child relation to the server? HOT 8
- Error when generating migration HOT 4
- Supabase HOT 15
- Converting object to an encodable object failed when adding a second item to an association HOT 7
- Add http ^1.0.0 support HOT 2
- Is this the same as realm db or couch db lite? HOT 4
- How to use with Firestore. HOT 1
- Subscribe is not listening to remote changes even when policy is set to OfflineFirstGetPolicy.awaitRemote HOT 6
- Feature: Synchronized app indicator HOT 1
- Deleting a document that has already been deleted from the server causes an error HOT 3
- Is this package still being maintain? HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from brick.