C# 링크 분석기 불량 요청 오류가 발생합니까?
-
22-07-2019 - |
문제
나는 URL을 가져 와서 처음으로 리디렉션하는 장소를 뱉어내는 다소 간단한 프로그램을 가지고 있습니다. 어쨌든, 나는 일부 링크에서 테스트하고 있으며 일부 URL에서 400 개의 오류가 발생했습니다. 브라우저에 붙여서 그러한 URL을 테스트하려고 시도했는데 잘 작동했습니다.
static string getLoc(string curLoc, out string StatusDescription, int timeoutmillseconds)
{
HttpWebRequest x = (HttpWebRequest)WebRequest.Create(curLoc);
x.UserAgent = "Opera/9.52 (Windows NT 6.0; U; en)";
x.Timeout = timeoutmillseconds;
x.AllowAutoRedirect = false;
HttpWebResponse y = null;
try
{
y = (HttpWebResponse)x.GetResponse(); //At this point it throws a 400 bad request exception.
해결책
쿠키에서 이상한 일이 일어나고 있다고 생각합니다. 링크를 테스트하는 방식으로 인해 작동하는 데 필요한 쿠키는 내 브라우저에 있었지만 링크는 아닙니다. 수동으로 테스트하고 있던 링크 중 일부 (다른 링크가 실패한 경우)가 쿠키를 생성하는 것이 밝혀졌습니다.
그것은 일어난 일이 약간 복잡해졌지만 짧은 대답은 내 브라우저에 쿠키가 있었는데, 프로그램은 그렇지 않았으며, 리디렉션 사이의 쿠키를 유지하면 문제가 해결되지 않았다는 것입니다.
기본 문제는 내가 테스트하는 링크에 추가 매개 변수 또는 쿠키 또는 둘 다를 필요로한다는 사실로 인해 발생합니다. 매개 변수/쿠키가 추적을위한 것이기 때문에 내 테스트에서 두 가지를 피하려고 노력했으며 추적을 중단하고 싶지 않았습니다.
요컨대, 나는 문제가 무엇인지 알고 있지만 해결 가능한 문제는 아닙니다.
제휴하지 않습니다 StackOverflow