У меня есть следующий код, который без проблем будет пинговать типичный анонимный веб-сайт, но я получаю либо несанкционированную ошибку, либо запрещенную. Вот код, который выдает запрещенную ошибку.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Net;
public partial class Ping : System.Web.UI.Page
{
protected string PingResponseTime(string url)
{
// Create a 'WebRequest' object with the specified url.
WebRequest myWebRequest = WebRequest.Create(url);
myWebRequest.Credentials = new NetworkCredential("username","password","domain");
myWebRequest.Timeout = 90000;
string requestTime, elapsedSecs;
// If trace enabled - set the Trace
WebHeaderCollection myWebCollection = new WebHeaderCollection();
myWebCollection.Add("Trace", "1");
myWebRequest.Headers = myWebCollection;
// Send the 'WebRequest' and wait for response.
DateTime startTime = DateTime.Now; // Start time
myWebRequest.GetResponse(); // Web Request
DateTime stopTime = DateTime.Now; // End Time
TimeSpan duration = stopTime - startTime; // Time Diff
// succededStr = "1";
requestTime = startTime.ToString();
elapsedSecs = duration.ToString().Substring(6);
return elapsedSecs;
}
protected void btnPing_Click(object sender, EventArgs e)
{
lblResponseTime.Text = PingResponseTime(txtURL.Text.ToString());
}
}
Что я делаю не так, когда получаю сообщение о запрещенной ошибке при проверке связи с сайтом Sharepoint? Я даже пробовал сайт Sharepoint с включенным анонимным доступом.
Второй комментарий Брайанта. Выберите код и щелкните значок кода на панели инструментов редактирования.





Вы пробовали заменить строку:
myWebRequest.Credentials = new NetworkCredential("username", "password", "domain");
с :
myWebRequest.Credentials = CredentialCache.DefaultCredentials;
или же :
myWebRequest.Credentials = CredentialCache.DefaultNetworkCredentials;
Можете ли вы немного поправить код в вопросе? Сейчас очень тяжело читать.