如何解决尝试使用 c# 从西门子 PLC 下载 .csv 文件
我正在尝试从 PLC 的数据记录下载文件,我可以从它的界面中毫无问题地进行下载,但我无法从我的应用程序中进行下载。我已经使用了这个代码。
WebClient mywebClient = new WebClient();
mywebClient.DownloadFile("https://10.200.201.35/Filebrowser/Download?Path=%2FDataLogs%2Fa.csv",@"C:/Users/ekkai/Downloads/a.csv");
但它向我展示了证书的两个例外。然后我用 RestSharp 尝试了一个 HTTP 请求。代码如下:
var client = new RestClient("https://10.200.201.35/Filebrowser/Download?Path=%2FDataLogs%2Fa.csv");
client.Timeout = -1;
var request = new RestRequest(Method.GET);
request.AddHeader("Content-Type","application/x-www-form-urlencoded");
request.AddHeader("Referer","https://10.200.201.35/Portal/Portal.mwsl?PriNav=Filebrowser&Path=%2FDataLogs");
request.AddHeader("Accept-Language","es-ES,es;q=0.9,ca;q=0.8,en;q=0.7");
request.AddHeader("Sec-Fetch-Dest","document");
request.AddHeader("Sec-Fetch-User","?1");
request.AddHeader("Password","1234");
request.AddHeader("sec-fetch-mode","navigate");
request.AddHeader("sec-fetch-site","same-origin");
request.AddHeader("Accept","text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9");
client.UserAgent = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML,like Gecko) Chrome/90.0.4430.212 Safari/537.36";
request.AddHeader("Origin","https://10.200.201.35");
request.AddHeader("Upgrade-Insecure-Requests","1");
request.AddHeader("sec-ch-ua-mobile","?0");
request.AddHeader("sec-ch-ua","\" Not A;Brand\";v=\"99\",\"Chromium\";v=\"90\",\"Google Chrome\";v=\"90\"");
request.AddHeader("Cache-Control","max-age=0");
request.AddHeader("Host","10.200.201.35");
IRestResponse response = client.Execute(request);
Console.WriteLine(response.Content);
应用程序没有任何反应,但是当我尝试在 Postman 中运行它时,我得到了这个 enter image description here
但它有效(仅在 Postman 中)。
这是我第一次使用 PLC,我不知道。 我不介意我是否必须更改编码语言。
谢谢大家!!
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。