app.route('/users')
.post(user.post)
.get(user.get)
.get(user.everyone)
.put(user.update)
.delete(user.delete);
我使用两个res.send遇到了我的函数问题,所以我得到了“错误:发送后无法设置标头”。错误,为解决此问题,我将其变成了两个函数,我试图在app.route上使用两个.get,但似乎只能使用一个,因为当我使用两个时,第二个不起作用。>
有没有一种方法可以在一个app.route上使用两个.get? 如果没有,该如何解决这个问题?
答案 0 :(得分:0)
您需要像这样为每个api端点创建单独的路由:
// result varible define as a public
long result = 80;
mCalculate.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
new CountDownTimer(result * 1000, 100) {
public void onTick(long millisUntilFinished) {
// its start with 1 if you want start with 0 then replace with below code
//int sec = (int) (result - (millisUntilFinished / 1000)-1);
int sec = (int) (result - (millisUntilFinished / 1000));
waveLoadingView.setProgressValue(sec);
waveLoadingView.setCenterTitle(String.valueOf(result)); //result is the value from randomize 60 to 80 .
}
public void onFinish() {
}
}.start();
}
});
答案 1 :(得分:0)
一旦调用res.send,则意味着您的服务器已将响应发送到浏览器或任何其他内容。您无法更改已发送的响应及其标题。
您可以在一种路由和一种方法(发布,获取)上使用多个回调
一组回调函数可以处理路由。例如:
var cb0 = function (req, res, next) {
console.log('CB0')
next()
}
var cb1 = function (req, res, next) {
console.log('CB1')
next()
}
var cb2 = function (req, res) {
res.send('Hello from C!')
}
app.get('/example/c', [cb0, cb1, cb2])
答案 2 :(得分:0)
是的,您可以使用其 .get 或 .post 的多个HTTP请求,但是它们具有不同的参数。或路线。