0

目前我正在尝试在我的 Sharepoint WarmUp 脚本中响应 HTTP 请求,但是为此,我将不得不使用此代码

 using (System.IO.StreamReader file = new System.IO.StreamReader(filePath))
                while ((line = file.ReadLine()) != null)
                {
                    try
                    {
                        WebRequest request = WebRequest.Create(line);
                        request.Proxy = null;

                        if ((userName == null) || (userName == ""))
                        {
                            request.Credentials = CredentialCache.DefaultCredentials;
                        }
                        else
                        {
                            CredentialCache myCache = new CredentialCache();
                            myCache.Add(new Uri(line), "NTLM", new NetworkCredential(userName, password, DomainName));
                            request.Credentials = myCache;
                        }

                        HttpWebResponse response = (HttpWebResponse)request.GetResponse();

                        using (Stream dataStream = response.GetResponseStream())
                        using (StreamReader reader = new StreamReader(dataStream))
                        {
                            string responseFromServer = reader.ReadToEnd();
                            reader.Close();
                            dataStream.Close();
                            response.Close();
                        }

                        Thread.Sleep(2000);
                    }

我不应该使用任何用户帐户来获得响应,但是我可以使用只有在服务器登录时才有效的默认凭据,否则我猜他们不会工作。

有没有其他方法可以使用powershell作为它的MOSS而不是sharepoint 2010

干杯

4

2 回答 2

2

您可以使用 Powershell 作为预热脚本。一旦进行了正确的导入,您就可以调用 stsadm 命令、发出 HTTP 请求甚至使用服务器对象模型。

这篇文章使用 powershell 使用 stsadm 检索可用站点。一旦脚本检索到这个列表,它就会实例化一个 WebClient 对象并点击每个站点 URL。

如果您只想点击列表中的站点,您可以简单地使用 WebClient 对象来执行此操作。

于 2012-06-18T13:23:06.910 回答
1

或者,如果您的 SSP 中有有效的搜索服务,您可以配置计划的爬网。您不仅会从最新的爬网结果中受益,而且您的网站也会在本地进行预热,而无需额外的工作“只是为了预热”。

于 2012-06-20T08:10:32.943 回答