Как смоделировать файл Host на время одного запроса

2

Мне нужно получить доступ к одновременным множественным экземплярам веб-служб со следующим URL-адресом. Веб-службы размещаются в IIS и имеют SSL.

https://services.mysite.com/data/data.asmx

Обычно, когда мы делаем этот процесс вручную, мы переходим один за другим и обновляем файл хоста Windows (c:\Windows\System32\drivers\etc\hosts) следующим образом:

192.1.1.100 services.mysite.com

Я хотел бы автоматизировать процесс и сделать это с помощью многопоточности. Поэтому я не могу изменить файл хоста. Есть ли способ имитации файла хоста, когда мы выполняем HTTP-запрос на С#?

Спасибо!

  • 0
    Вы когда-нибудь получали решение? Я хотел бы сделать что-то подобное, но я просто хочу попасть на обычный домен (например, google.com), но он указывает на разные ips.
Теги:
ssl
http

3 ответа

0
Лучший ответ

Если вам известен IP-адрес конечной точки SSL сервера (что не обязательно совпадает с IP-адресом сервера по умолчанию), вы можете просто направить на него веб-сервис? Очевидно, что проверка SSL завершится неудачно, но вы можете отключить это через код...

ServicePointManager.ServerCertificateValidationCallback += delegate
{
    return true; // you might want to check some of the certificate detials...
};
  • 0
    Я получаю сообщение «Запрос не выполнен с HTTP-статусом 403: запрещено». ServicePointManager.ServerCertificateValidationCallback + = делегат {return true; }; dataUrl = " machine1 / dataaccess / DataService.asmx "; DataService dataService = new DataService (dataUrl); return dataService.GetData (); Проблема в том, что без файла хоста я не могу использовать этот URL: services.mysite.com/data/data.asmx . Как мне попасть на конкретную машину и обойти SSL?
0

Вы можете изменить URL-адрес, который ваш запрос нажимает во время выполнения, примерно так:

svc.Url = "http://firstServer.com";

Итак, если вы создаете программу, проходящую через каждый из ваших желаемых серверов, просто обновите свойство URL напрямую (этот пример берется из веб-служб на основе WSE 3).

  • 0
    Я не могу этого сделать ... В противном случае SSL потерпит неудачу.
  • 0
    Почему SSL потерпит неудачу?
Показать ещё 2 комментария
0

Я думаю, что вы получите тот же эффект, установив прокси-сервер этого конкретного запроса на IP-адрес фактического веб-сервера, на который вы хотите отправить запрос.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню