ServicePointManager.FindServicePoint 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
尋找現有 ServicePoint 物件或建立新的 ServicePoint 物件,以管理這個要求的通訊。
多載
FindServicePoint(Uri, IWebProxy) |
已淘汰.
尋找現有 ServicePoint 物件或建立新的 ServicePoint 物件,以管理對指定之 Uri 物件的通訊。 |
FindServicePoint(Uri) |
已淘汰.
尋找現有 ServicePoint 物件或建立新的 ServicePoint 物件,以管理對指定之 Uri 物件的通訊。 |
FindServicePoint(String, IWebProxy) |
已淘汰.
尋找現有 ServicePoint 物件或建立新的 ServicePoint 物件,以管理對指定之統一資源識別元 (URI) 的通訊。 |
FindServicePoint(Uri, IWebProxy)
警告
WebRequest, HttpWebRequest, ServicePoint, and WebClient are obsolete. Use HttpClient instead.
尋找現有 ServicePoint 物件或建立新的 ServicePoint 物件,以管理對指定之 Uri 物件的通訊。
public:
static System::Net::ServicePoint ^ FindServicePoint(Uri ^ address, System::Net::IWebProxy ^ proxy);
public static System.Net.ServicePoint FindServicePoint (Uri address, System.Net.IWebProxy? proxy);
[System.Obsolete("WebRequest, HttpWebRequest, ServicePoint, and WebClient are obsolete. Use HttpClient instead.", DiagnosticId="SYSLIB0014", UrlFormat="https://aka.ms/dotnet-warnings/{0}")]
public static System.Net.ServicePoint FindServicePoint (Uri address, System.Net.IWebProxy? proxy);
public static System.Net.ServicePoint FindServicePoint (Uri address, System.Net.IWebProxy proxy);
static member FindServicePoint : Uri * System.Net.IWebProxy -> System.Net.ServicePoint
[<System.Obsolete("WebRequest, HttpWebRequest, ServicePoint, and WebClient are obsolete. Use HttpClient instead.", DiagnosticId="SYSLIB0014", UrlFormat="https://aka.ms/dotnet-warnings/{0}")>]
static member FindServicePoint : Uri * System.Net.IWebProxy -> System.Net.ServicePoint
Public Shared Function FindServicePoint (address As Uri, proxy As IWebProxy) As ServicePoint
參數
- proxy
- IWebProxy
這個要求的 Proxy 資料。
傳回
ServicePoint 物件,管理要求的通訊。
- 屬性
例外狀況
address
為 null
。
已經達到 ServicePoint 中所定義的 MaxServicePoints 物件最大數。
備註
方法 FindServicePoint 會傳 ServicePoint 回與指定之因特網主機名相關聯的物件。 如果該主機沒有任何 ServicePoint 物件存在,物件 ServicePointManager 就會建立一個物件。
另請參閱
適用於
FindServicePoint(Uri)
警告
WebRequest, HttpWebRequest, ServicePoint, and WebClient are obsolete. Use HttpClient instead.
尋找現有 ServicePoint 物件或建立新的 ServicePoint 物件,以管理對指定之 Uri 物件的通訊。
public:
static System::Net::ServicePoint ^ FindServicePoint(Uri ^ address);
public static System.Net.ServicePoint FindServicePoint (Uri address);
[System.Obsolete("WebRequest, HttpWebRequest, ServicePoint, and WebClient are obsolete. Use HttpClient instead.", DiagnosticId="SYSLIB0014", UrlFormat="https://aka.ms/dotnet-warnings/{0}")]
public static System.Net.ServicePoint FindServicePoint (Uri address);
static member FindServicePoint : Uri -> System.Net.ServicePoint
[<System.Obsolete("WebRequest, HttpWebRequest, ServicePoint, and WebClient are obsolete. Use HttpClient instead.", DiagnosticId="SYSLIB0014", UrlFormat="https://aka.ms/dotnet-warnings/{0}")>]
static member FindServicePoint : Uri -> System.Net.ServicePoint
Public Shared Function FindServicePoint (address As Uri) As ServicePoint
參數
傳回
ServicePoint 物件,管理要求的通訊。
- 屬性
例外狀況
address
為 null
。
已經達到 ServicePoint 中所定義的 MaxServicePoints 物件最大數。
備註
方法 FindServicePoint 會傳 ServicePoint 回與指定之因特網主機名相關聯的物件。 如果該主機沒有任何 ServicePoint 物件存在,物件 ServicePointManager 就會建立一個物件。
另請參閱
適用於
FindServicePoint(String, IWebProxy)
警告
WebRequest, HttpWebRequest, ServicePoint, and WebClient are obsolete. Use HttpClient instead.
尋找現有 ServicePoint 物件或建立新的 ServicePoint 物件,以管理對指定之統一資源識別元 (URI) 的通訊。
public:
static System::Net::ServicePoint ^ FindServicePoint(System::String ^ uriString, System::Net::IWebProxy ^ proxy);
public static System.Net.ServicePoint FindServicePoint (string uriString, System.Net.IWebProxy? proxy);
[System.Obsolete("WebRequest, HttpWebRequest, ServicePoint, and WebClient are obsolete. Use HttpClient instead.", DiagnosticId="SYSLIB0014", UrlFormat="https://aka.ms/dotnet-warnings/{0}")]
public static System.Net.ServicePoint FindServicePoint (string uriString, System.Net.IWebProxy? proxy);
public static System.Net.ServicePoint FindServicePoint (string uriString, System.Net.IWebProxy proxy);
static member FindServicePoint : string * System.Net.IWebProxy -> System.Net.ServicePoint
[<System.Obsolete("WebRequest, HttpWebRequest, ServicePoint, and WebClient are obsolete. Use HttpClient instead.", DiagnosticId="SYSLIB0014", UrlFormat="https://aka.ms/dotnet-warnings/{0}")>]
static member FindServicePoint : string * System.Net.IWebProxy -> System.Net.ServicePoint
Public Shared Function FindServicePoint (uriString As String, proxy As IWebProxy) As ServicePoint
參數
- uriString
- String
要聯繫的網際網路資源 URI。
- proxy
- IWebProxy
這個要求的 Proxy 資料。
傳回
ServicePoint 物件,管理要求的通訊。
- 屬性
例外狀況
uriString
中指定的 URI 無效。
已經達到 ServicePoint 中所定義的 MaxServicePoints 物件最大數。
範例
下列程式代碼範例示範如何呼叫這個方法來存取 ServicePoint 物件。
int main()
{
array<String^>^args = Environment::GetCommandLineArgs();
int port = 80;
// Define a regular expression to parse the user's input.
// This is a security check. It allows only
// alphanumeric input strings between 2 to 40 characters long.
Regex^ rex = gcnew Regex( "^[a-zA-Z]\\w{1,39}$" );
if ( args->Length < 2 )
{
showUsage();
return -1;
}
String^ proxy = args[ 1 ];
if ( (!rex->Match(proxy))->Success)
{
Console::WriteLine( "Input string format not allowed." );
return -1;
}
String^ proxyAdd = String::Format( "http://{0}:{1}", proxy, port );
// Create a proxy object.
WebProxy^ DefaultProxy = gcnew WebProxy( proxyAdd,true );
// Set the proxy that all HttpWebRequest instances use.
WebRequest::DefaultWebProxy = DefaultProxy;
// Get the base interface for proxy access for the
// WebRequest-based classes.
IWebProxy^ Iproxy = WebRequest::DefaultWebProxy;
// Set the maximum number of ServicePoint instances to
// maintain. If a ServicePoint instance for that host already
// exists when your application requests a connection to
// an Internet resource, the ServicePointManager object
// returns this existing ServicePoint instance. If none exists
// for that host, it creates a new ServicePoint instance.
ServicePointManager::MaxServicePoints = 4;
// Set the maximum idle time of a ServicePoint instance to 10 seconds.
// After the idle time expires, the ServicePoint object is eligible for
// garbage collection and cannot be used by the ServicePointManager.
ServicePointManager::MaxServicePointIdleTime = 10000;
ServicePointManager::UseNagleAlgorithm = true;
ServicePointManager::Expect100Continue = true;
ServicePointManager::CheckCertificateRevocationList = true;
ServicePointManager::DefaultConnectionLimit = ServicePointManager::DefaultPersistentConnectionLimit;
// Create the Uri object for the resource you want to access.
Uri^ MS = gcnew Uri( "http://msdn.microsoft.com/" );
// Use the FindServicePoint method to find an existing
// ServicePoint object or to create a new one.
ServicePoint^ servicePoint = ServicePointManager::FindServicePoint( MS, Iproxy );
ShowProperties( servicePoint );
int hashCode = servicePoint->GetHashCode();
Console::WriteLine( "Service point hashcode: {0}", hashCode );
// Make a request with the same scheme identifier and host fragment
// used to create the previous ServicePoint object.
makeWebRequest( hashCode, "http://msdn.microsoft.com/library/" );
}
public static void Main(string[] args)
{
int port = 80;
// Define a regular expression to parse the user's input.
// This is a security check. It allows only
// alphanumeric input strings between 2 to 40 characters long.
Regex rex = new Regex(@"^[a-zA-Z]\w{1,39}$");
if (args.Length < 1)
{
showUsage();
return;
}
string proxy = args[0];
if (!(rex.Match(proxy)).Success)
{
Console.WriteLine("Input string format not allowed.");
return;
}
string proxyAdd = "http://" + proxy + ":" + port;
// Create a proxy object.
WebProxy DefaultProxy = new WebProxy(proxyAdd, true);
// Set the proxy that all HttpWebRequest instances use.
WebRequest.DefaultWebProxy = DefaultProxy;
// Get the base interface for proxy access for the
// WebRequest-based classes.
IWebProxy Iproxy = WebRequest.DefaultWebProxy;
// Set the maximum number of ServicePoint instances to
// maintain. If a ServicePoint instance for that host already
// exists when your application requests a connection to
// an Internet resource, the ServicePointManager object
// returns this existing ServicePoint instance. If none exists
// for that host, it creates a new ServicePoint instance.
ServicePointManager.MaxServicePoints = 4;
// Set the maximum idle time of a ServicePoint instance to 10 seconds.
// After the idle time expires, the ServicePoint object is eligible for
// garbage collection and cannot be used by the ServicePointManager object.
ServicePointManager.MaxServicePointIdleTime = 10000;
ServicePointManager.UseNagleAlgorithm = true;
ServicePointManager.Expect100Continue = true;
ServicePointManager.CheckCertificateRevocationList = true;
ServicePointManager.DefaultConnectionLimit = ServicePointManager.DefaultPersistentConnectionLimit;
// Create the Uri object for the resource you want to access.
Uri MS = new Uri("http://msdn.microsoft.com/");
// Use the FindServicePoint method to find an existing
// ServicePoint object or to create a new one.
ServicePoint servicePoint = ServicePointManager.FindServicePoint(MS, Iproxy);
ShowProperties(servicePoint);
int hashCode = servicePoint.GetHashCode();
Console.WriteLine("Service point hashcode: " + hashCode);
// Make a request with the same scheme identifier and host fragment
// used to create the previous ServicePoint object.
makeWebRequest(hashCode, "http://msdn.microsoft.com/library/");
}
' This is the program entry point. It allows the user to enter
' a server name that is used to locate its current homepage.
Public Shared Sub Main(ByVal args() As String)
Dim proxy As String = Nothing
Dim port As Integer = 80
' Define a regular expression to parse the user's input.
' This is a security check. It allows only
' alphanumeric input strings between 2 to 40 characters long.
Dim rex As New Regex("^[a-zA-Z]\w{1,39}$")
If args.Length = 0 Then
' Show how to use this program.
showUsage()
Return
End If
proxy = args(0)
If (Not (rex.Match(proxy)).Success) Then
Console.WriteLine("Input string format not allowed.")
Return
End If
' Create a proxy object.
Dim proxyAdd As String
proxyAdd = "http://" + proxy + ":" + port.ToString()
Dim DefaultProxy As New WebProxy(proxyAdd, True)
' Set the proxy that all HttpWebRequest instances use.
WebRequest.DefaultWebProxy = DefaultProxy
' Get the base interface for proxy access for the
' WebRequest-based classes.
Dim Iproxy As IWebProxy = WebRequest.DefaultWebProxy
' Set the maximum number of ServicePoint instances to maintain.
' Note that, if a ServicePoint instance for that host already
' exists when your application requests a connection to
' an Internet resource, the ServicePointManager object
' returns this existing ServicePoint. If none exists
' for that host, it creates a new ServicePoint instance.
ServicePointManager.MaxServicePoints = 4
' Set the maximum idle time of a ServicePoint instance to 10 seconds.
' After the idle time expires, the ServicePoint object is eligible for
' garbage collection and cannot be used by the ServicePointManager.
ServicePointManager.MaxServicePointIdleTime = 10000
ServicePointManager.UseNagleAlgorithm = True
ServicePointManager.Expect100Continue = True
ServicePointManager.CheckCertificateRevocationList = True
ServicePointManager.DefaultConnectionLimit = _
ServicePointManager.DefaultPersistentConnectionLimit
' Create the Uri object for the resource you want to access.
Dim MS As New Uri("http://msdn.microsoft.com/")
' Use the FindServicePoint method to find an existing
' ServicePoint object or to create a new one.
Dim servicePoint As ServicePoint = ServicePointManager.FindServicePoint(MS, Iproxy)
ShowProperties(servicePoint)
Dim hashCode As Integer = servicePoint.GetHashCode()
Console.WriteLine(("Service point hashcode: " + hashCode.ToString()))
' Make a request with the same scheme identifier and host fragment
' used to create the previous ServicePoint object.
makeWebRequest(hashCode, "http://msdn.microsoft.com/library/")
End Sub
備註
方法 FindServicePoint 會傳 ServicePoint 回與指定之因特網主機名相關聯的物件。 如果該主機沒有任何 ServicePoint 物件存在,物件 ServicePointManager 就會建立一個物件。