我正在执行http或https get请求(取决于URL),并且我想将相同的回调函数传递给http或https get请求。
我的问题是我还想将另一个参数传递给回调函数。
我该怎么做?
例如,如何将myParameter传递给回调函数?
var myParameter = 1
if(url.indexOf('https') === 0 ) {
https.get(url, callbackFunc);
else{
http.get(url, callbackFunc);
}
function callbackFunc(res, myParameter){}
最佳答案
首先,将callbackFunc的参数顺序更改为
function callbackFunc(myParameter, res) {
}
(首先使用myParameter,以便我们可以按如下所示绑定它,然后再绑定res)
然后,您可以执行以下操作:
var boundCallback = callbackFunc.bind(null, myParameter);
然后,在调用http或https get时,使用
boundCallback
代替callbackFunc
。