最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

明确要求后处理

运维笔记admin17浏览0评论

明确要求后处理

明确要求后处理

我一直没能找到明确的文档中的任何东西,但有作为信息发布处理这样的事情?我使用的是自定义的令牌认证方式,采用护照,我想提出请求,主要是用于认证目的散列时间戳后自动更新在响应报头中的令牌的能力。为便于讨论,让我们说,我想下面的函数每个请求后执行:

function requestPostProcess(req, res){
    if (res.status == 200)
    {
        res.token = updateToken();
    }
}

理想情况下,我希望能够做到这一点,而无需旁边叫()在我的每一个路线。是否可能?

回答如下:

如果你想令牌添加到响应,

1)您可以创建一个中间件,一旦添加令牌作为请求到达,并在被处理前。请求处理程序之前,将这个。

例,

app.use(function(req, res, next){
  res.token = updateToken();
  next();
})

这里的毛刺是,令牌将与所有的答复,但可以是一些你可以接受,因为它是一个时间戳。另外,您还可以使用中间件甚至处理错误,并取出令牌时的状态不是200。

需要最小的变化,在适当的错误处理它的伟大工程:优势。

缺点:它告诉当收到请求,而不是当响应准备的时间。

2)如果你想放的响应处理完成之后,这意味着当响应准备的时间,那么你可能需要创建发回的所有响应的实用功能,而你总是调用该函数。这效用函数将检查情况和追加令牌。

function sendResponseGateway(req, res){
    if (res.status == 200)
    {
        res.token = updateToken();
    }
    res.send()
}

现在,只要你准备好发送响应,你可以调用这个函数。

缺点:功能需要被称为无处不在,你会不会写“res.send”的任何地方。

优点:你在发送响应的网关,你可以做更多的东西一样的编码,在功能增加更多的头部等,而所有这些响应修改的事情发生在一个地方。

与本文相关的文章

发布评论

评论列表(0)

  1. 暂无评论