Wpis z mikrobloga

#randomanimeshit #programowanie #microsoftcwel #dotnet projekt zrobienia sobie mirrora nyaa(skoro już działa) wstrzymany aż będzie mi się chciało, blame Microsoft. Nyaa na części torrentów normalnie pozwala ściągnąć, ale np. www.nyaa.se/?page=download&tid=576000 rzuca redirect bezpośrednio na magnetlink, co powoduje zapętlenie się HttpWebRequest.GetResponse() nawet przy wyłaczeniu automatycznego podążania za redirectami. Nie, nie chce mi sie dzisiaj pisać od nowa obsługi HTTP na socketach ;]
  • 3
@benethor: a tak nie łyknie?



using
```**```
 (WebClient Client = 
```**```
new
```**```
 WebClient ())

{

    Client.DownloadFile(
```_```
"www.nyaa.se/?page=download&tid=576000"
```_```


```_```
"Shinyaku.Toaru.Majutsu.no.Index.torrent"
```_```
);

}

Od tego w końcu jest WebClient.DownloadFile
@aseeon: no właśnie nie, bo nyaa rzuca dla tego linku redirecta przez 303 i magnetlinka daje w Location zamiast w contencie. Więc HttpWebRequest się zapętla aż do timeoutu(WebException, ale zwrotki żadnej nie poda), z kolei WebClient rzuca WebException z info o niewłaściwym protokole. Trzeba by ręcznie opierdzielić odbiór odpowiedzi.
@aseeon: dobra, wykombinowałem. M$ zapomniał dodać w destruktorze checka czy response został zamknięty. A ja zapomniałem response zamknąć :D Efekt taki, że przestało się zapętlać, więc da radę ogarnąć po wyłączeniu AllowAutoRedirect.