【发布时间】:2017-08-23 21:08:21
【问题描述】:
所以没有打开提琴手,我的代码似乎什么都不做! 但是打开它,它工作正常吗?!什么?
HttpWebRequest init = (HttpWebRequest)WebRequest.Create("https://accounts.spotify.com/en/login?continue=https:%2F%2Fwww.spotify.com%2Fus%2Faccount%2Foverview%2F");
init.Method = "GET";
init.UserAgent = "Mozilla/5.0 (Windows NT 6.3; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36";
init.Timeout = 8000;
HttpWebResponse resp1 = (HttpWebResponse)init.GetResponse();
线程(在我的情况下是 ThreadPool 线程)只会冻结,不会结束,只会冻结,因为它无法连接,并且 try catch 甚至似乎也不起作用。
如果我将 Fiddlers 设置上的端口更改为 8888 以外的任何值并打开 Fiddler,它会再次开始冻结,这意味着它以某种方式链接到 8888。然而它根本没有在我的代码中引用。
已修复!
发现是没有关闭造成的! resp1.close()。
谢谢大家!
【问题讨论】:
-
“我的代码似乎什么也没做”是什么意思?
-
要查看 fiddler 中的任何内容,您通常需要通过 web.config 配置代理。如果您停止提琴手并且不更改配置 - 您的应用程序内部的网络连接将无法正常工作。
-
基本上线程只是卡住了,它什么也没做。当我打开 Fiddler(在 127.0.0.1:8888 下运行)时,它开始工作。我什至没有那个作为代理。它非常非常奇怪。
标签: c# httpwebrequest httpwebresponse