.NET Framework дээрх WCF: HTTP GET мета өгөгдлийн прокси тохиргоо
HTTP импортуудыг оруулан, WCF мета өгөгдөл татах хуучин замыг эцсийн SOAP үйлчилгээний клиентээс тусад нь тохируулна уу.
HTTP GET горимд .NET Framework 4.8.1 дээр WCF мета өгөгдөл татахын тулд зөвхөн эцсийн SOAP клиентийг бус, эхний мета өгөгдлийн хүсэлтийг тохируулна уу. Түүний хамгаалагдсан GetWebRequest дэгээ нь тусад нь удирдагдах замыг хэрэглэж болно:
class RoutedMetadataClient : MetadataExchangeClient
{
private readonly IWebProxy route;
public RoutedMetadataClient(IWebProxy route)
{
this.route = route;
}
protected override HttpWebRequest GetWebRequest(
Uri location, string dialect, string identifier)
{
HttpWebRequest request =
base.GetWebRequest(location, dialect, identifier);
request.Proxy = route;
return request;
}
}Төрлүүд System.Net болон System.ServiceModel.Description-оос ирдэг. Энэ клиентийг зориулсан WebProxy-той бүтээж, WSDL URL-д HttpGet горимыг ашиглана уу. Прокси бүртгэлийг тэр объект дээр тавина; мета өгөгдлийн серверийн баталгаажуулалт нь тусдаа.
Үндсэн WSDL амжилттай болсон ч шийдвэрлэлт дараа нь бүтэлгүйтвэл импортуудыг дагана уу. Бусад WSDL болон схемүүд өөр хост эсвэл протокол ашиглаж болно.
Өөр татах горимд тохирох өргөтгөлийг сонгоно уу. WS-MetadataExchange суваг ашигладаг бөгөөд түүний үүсгэх дэгээ нь GetChannelFactory; түүний binding болон прокси тохиргоог HttpWebRequest дарж бичих замаар бүх нийтийнхээр солихгүй.
Оролцож буй бүх хуучин бүрэлдэхүүн хэсгүүд хуваалцах ёстой бол анхдагч програмын прокси хангалттай байж болно. Дэд класс нь энэ API гэр бүлд мета өгөгдлийн тодорхой эзэмшлийн зориулалттай. Үүсгэсэн SOAP дуудлагууд өөрсдийн runtime тээврийн тохиргоог шаардсаар байна. BasicHttpBinding клиентийн хувьд ProxyAddress болон UseDefaultWebProxy-г хамт шалгана уу.