如何使用c#从另一个url中读取HTML文件
本文关键字:读取 HTML 文件 url 另一个 何使用 | 更新日期: 2023-09-27 18:12:41
我需要先使用下面的调用。我将得到
WebRequest request = WebRequest.Create("https://cli-cert.emdeon.com/servlet/DxLogin?userid={userid}&PW={password}0&hdnBusiness={facilityid}&target=jsp/lab/results/FDC.jsp&apiLogin=true&apiuserid={userid}&actionCommand=startDownload&autoPrint=true&batchDownload=true&reportTypes=LABRES&CreationDateFrom=02/01/2013&CreationDateTo=04/24/2013");
WebResponse resp = request.GetResponse();
Stream responseStream = resp.GetResponseStream();
StreamReader responseReader = new StreamReader(responseStream);
string responseString = responseReader.ReadToEnd();
WebRequest request1 = WebRequest.Create("https://cli-cert.emdeon.com/servlet/lab.results.fdcServlet?actionCommand=NextFile&batchDownload=true&fdcuserid={userid}");
WebResponse resp1 = request.GetResponse();
Stream responseStream1 = resp.GetResponseStream();
StreamReader responseReader1 = new StreamReader(responseStream1);
string responseString1 = responseReader1.ReadToEnd();
WebRequest request2 = WebRequest.Create("https://cli-cert.emdeon.com/servlet/lab.results.fdcServlet?actionCommand=GetFileInfo&fdcuserid={userid}");
WebResponse resp2 = request.GetResponse();
Stream responseStream2 = resp.GetResponseStream();
StreamReader responseReader2 = new StreamReader(responseStream2);
string responseString2 = responseReader2.ReadToEnd();
WebRequest request3 = WebRequest.Create("https://cli-cert.emdeon.com/servlet/lab.results.fdcServlet?actionCommand=DownloadFile&mmi=true&fdcuserid={userid}");
WebResponse resp3 = request.GetResponse();
Stream responseStream3 = resp3.GetResponseStream();
StreamReader responseReader3 = new StreamReader(responseStream3);
string responseString3 = responseReader3.ReadToEnd();
WebRequest request4 = WebRequest.Create("https://cli-cert.emdeon.com/servlet/lab.results.fdcServlet?actionCommand=MarkAsDownloaded&fdcuserid={userid}");
WebResponse resp4 = request.GetResponse();
Stream responseStream4 = resp4.GetResponseStream();
StreamReader responseReader4 = new StreamReader(responseStream3);
string responseString4 = responseReader4.ReadToEnd();
resp.Close();
resp1.Close();
resp2.Close();
resp3.Close();
resp4.Close();
注意:{userid},{password},{facilityId}是登录的凭据。
I need to call all the 5 request and parse it and save. I need to call each calls by listed order only.
1)第一次调用我得到预期的输出。2)预期的调用是"<—BEGIN NUMBER OF DOCS>2;warning;123345;asdf;sdf;234243;18872_TEST_TC3;<—END NUMBER OF DOCS>",但是我的流阅读器是空的。
3)所有其他调用为空
欢迎任何阅读建议和解决方案。我是开发和c#的新手。提前谢谢。
谢谢Rajesh.k
您正在使用相同的responseStream "resp"对所有的调用,而不是每个后续的resp1, resp2等,变量,并与响应和其他变量相同:
Stream responseStream2 = resp.GetResponseStream();