/* get url's response * */ public HttpWebResponse getUrlResponse(string url, Dictionary<string, string> headerDict = defHeaderDict, Dictionary<string, string> postDict = defPostDict, int timeout = defTimeout, string postDataStr = defPostDataStr, int readWriteTimeout = defReadWriteTimeout) { #if USE_GETURLRESPONSE_BW //BackgroundWorker Version getUrlResponse HttpWebResponse localCurResp = null; getUrlResponse_bw(url, headerDict, postDict, timeout, postDataStr, readWriteTimeout); while (bNotCompleted_resp) { System.Windows.Forms.Application.DoEvents(); } localCurResp = gCurResp; //clear gCurResp = null; return localCurResp; #else //non-BackgroundWorker Version getUrlResponse return _getUrlResponse(url, headerDict, postDict, timeout, postDataStr);; #endif }
从上面的代码中可以看出,此处的getUrlResponse内部的实现,是依赖于是否设置宏USE_GETURLRESPONSE_BW,而去调用对应的BackgroundWorker版本的,还是非BackgroundWorker版本的_getUrlResponse
此处,getUrlResponse,是用来返回HttpWebResponse的,且支持N多参数。