GetResponse не работает для внутреннего URL

Я пытаюсь вернуть веб-страницу в виде потока.

То, что у меня есть до сих пор, работает, когда я пытаюсь получить доступ к внешнему URL-адресу, например, «http://www.google.com'. Но когда я пытаюсь получить доступ к веб-сайту на нашем сервере, например, 'http://servername/applicationname/default.aspx'.

Ниже приведен код, который у меня есть в настоящее время, который работает для внешнего:

Dim request As HttpWebRequest = CType(WebRequest.Create("http://www.google.com/search?q=google"), HttpWebRequest)
Dim response As HttpWebResponse = CType(request.GetResponse, HttpWebResponse)
Dim resStream As Stream = response.GetResponseStream

Но когда я пробую это с этой строкой, я получаю The remote server returned an error: (401) Unauthorized.

Dim request As HttpWebRequest = CType(WebRequest.Create("http://Server/Application/SubFolder/testing.aspx"), HttpWebRequest)        
Dim response As HttpWebResponse = CType(request.GetResponse(), HttpWebResponse)

Я попытался изменить учетные данные, с которыми он обращается к серверу, используя:

request.Credentials = CredentialCache.DefaultCredentials

И я попытался использовать веб-клиент:

Dim myWebClient As New WebClient()
Dim myStream As Stream = myWebClient.OpenRead("http://Server/Application/SubFolder/testing.aspx")

person GeoffWilson    schedule 27.10.2015    source источник


Ответы (1)


Вы получаете ошибку 401, потому что аутентификация веб-сервера отклоняет запрос. Возможно, вам потребуется явно указать свои учетные данные.

            request.Credentials = New NetworkCredential("userName", "password", "domain")
person InbetweenWeekends    schedule 27.10.2015