Comments (4)
I think, technically, PUT shouldn't do automatic upserts. You can register your own middleware to set the status after a service though:
app.use('/myservice', service, function(req, res, next) {
const data = res.data; // service call result
res.status(getStatusFromData(data)) ;
next();
});
from feathers-rest.
HI @daffl
Thanks for your response. If we use middleware to set the status after service invoked, then the our code in service could be come more complex. Why dont we let the service to handle it custom status whenever they need?
Trung
from feathers-rest.
What would be more complex?
As pointed out in this FAQ the main reason to not let the service itself do it is that they shouldn't know about how they are being accessed. A service can also be used via websockets or locally (or other non-HTTP transport mechanisms in the future) in which case setting an HTTP status code doesn't make any sense.
If you really really need it you can always add the request and response object to params
in a middleware but we recommend not to do that.
from feathers-rest.
Thanks
from feathers-rest.
Related Issues (20)
- Consider how to handle file upload HOT 5
- Add headers and remote IP
- res.hook should exist in middleware after errors
- Setting 'content-type' header properly with boundary HOT 3
- $in: [] returning unexpected results HOT 2
- JSON-API + feathers-rest HOT 4
- Property 'axios' does not exist on type 'Transport' HOT 4
- $gte query example? HOT 2
- Map route parameters to `params.route` HOT 1
- How to return a pdf download file instead of data ?
- Update returning 204 HOT 2
- An in-range update of feathers is breaking the build 🚨 HOT 1
- Prepare for feathers v3 HOT 9
- Angular http implementation error HOT 1
- Client fails to parse json response on 204 status using fetch HOT 2
- $in operator doesn't work correctly through rest HOT 15
- fn.call is not a function(…) on client side with webpack HOT 2
- Client: Support Service Middleware / Generic Service HOT 5
- support axios? HOT 3
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 feathers-rest.