Как использовать HTTP POST с прокси поддержкой в C# и способе загрузки многочастных данных формыКак использовать HTTP POST с поддержкой прокси в C#
ответ
This post by Brian Grinstead объясняет, как вы можете это сделать.
Для поддержки прокси-сервера вам необходимо пройти только Proxy
до HttpWebRequest
. Так, в приведенном выше примере, вы бы изменить:
HttpWebRequest request = WebRequest.Create(postUrl) as HttpWebRequest;
To:
string MyProxyHostString = "192.168.1.200";
int MyProxyPort = 8080;
HttpWebRequest request = WebRequest.Create(postUrl) as HttpWebRequest;
request.Proxy = new WebProxy (MyProxyHostString, MyProxyPort);
Если вам нужно configue прокси, то вы можете сделать это в файле .config : -
<system.net>
<defaultProxy enabled="true">
<proxy proxyaddress="http://myproxyserver:8080" bypassonlocal="True"/>
</defaultProxy>
</system.net>
Смотрите эту question на публикации данных формы.
HTTP POST? webRequest? что ты говоришь? –
Извините, что мы просто спрашиваем о поддержке прокси-сервера, однако большая часть вопроса касается многомерных данных формы. – AnthonyWJones
Могу ли я использовать прокси-сервер в некотором одном ex. http://www.proxy4free.com/page1.html to http post 189.80.133.186 \t 8080 ?? –
Если запрос на веб-отлично работает в вашем локальном хосте с прокси по умолчанию и не работает на вашем веб-сервере, то вам необходимо установить одобренный вами прокси-сервер , а также указать белый URL-адрес, который вы подключаете к из своего веб-приложения на веб-сервере.
Вы можете указать настройки прокси-сервера либо в файле web.config, либо в коде.
<system.net>
<defaultProxy enabled="true">
<proxy proxyaddress="http://yourcompanyproxyserver:8080" bypassonlocal="True"/>
</defaultProxy>
</system.net>
(или)
HttpWebRequest wr = (HttpWebRequest)WebRequest.Create("URL");
wr.Proxy = new WebProxy("companyProxy",Portnumber);
wr.Method = "POST";
очень хорошее решение спасибо –
Проблема с этим подходом заключается в том, что он жестко кодирует адрес/порт прокси в скомпилированный код. – AnthonyWJones
Это можно легко разместить в другом месте. Я поставил это таким образом, чтобы лучше объяснить пример. – Druid