hubs
Version:
``` Caryl ------ courier3 / \ / \ courier1 courier2
41 lines (34 loc) • 977 B
JavaScript
const url = require('url')
/**
* request context
* @desc lifecycle: 存在于整个请求
*
* @class Context
*/
class Context{
/**
* Creates an instance of Context.
* @param {any} items 请求的配置
* @param {any} state 请求的状态配置
*/
constructor(reqItems, state){
this.reqItems = reqItems
this.state = state
this.payloads = Object.create(null)
this.errs = Object.create(null)
}
}
Context.preprocess = function(reqItems, protocol) {
Object.keys(reqItems).forEach(key=>{
var context = reqItems[key]
var prot = 'static'
if (context.url) {
var urlObj = url.parse(context.url)
prot = urlObj.protocol.substr(0, urlObj.protocol.length - 1)
}
context.protocol = prot
context.requestor = protocol.use(prot)
})
return reqItems
}
module.exports = Context