标签: proxy

如何在WCF客户端服务代理上设置HTTP代理(WebProxy)?

如何在不使用默认代理的情况下在WCF客户端上以编程方式设置HTTP代理?

代理,代理,代理.

根据WCF开发模型,我通过在服务的WSDL上运行svcutil.exe来生成客户端"代理"类.(这也会产生客户端配置文件).

在我的代码中,我新建了该类的一个实例,我可以连接到该服务.非常好.

var svcProxy = new MyWebService();
svcProxy.GetInformation(request); 
Run Code Online (Sandbox Code Playgroud)

我们将此事称为代理类,但还有另一个代理 - http代理.这个服务使用wsHttpBinding basicHttpBinding,所以它通过http.现在,假设我想通过http代理将客户端连接到Web服务(由.NET BCL中的System.Net.WebProxy建模).我从阅读.NET和WCF文档的丰富,愉快的经验中了解到,如果没有另外指示,WCF运行时将通过http/https进行通信时使用默认系统代理.

我可以使用此处所述的ProxyCfg.exe从WinXP/2003中的命令行进行设置,也可以使用此处所述的netsh.exe在更高版本的Windows中进行设置.

我还可以通过设置System.Net.WebRequest.DefaultWebProxy属性来指定在应用程序中使用的默认Web代理.

但是假设我想通过与系统范围代理不同的代理连接?例如,可能没有系统范围的代理,但我需要特别使用一个用于Web服务.或者可能有一个系统范围的代理,但我需要使用另一个代理,用于Web服务.事实上,可能有多个Web服务客户端,每个客户端应该有一个不同的代理.

如何为每个绑定设置代理?

在ASMX模型中,我可以这样做:

var svcProxy = new MyWebService();
svcProxy.Proxy = new System.Net.WebProxy("http://proxyserver:1234", true);
svcProxy.GetInformation(request); 
Run Code Online (Sandbox Code Playgroud)

但是WCF不可能做到这一点; WCF生成的客户端代理类不公开Proxy属性.如何为每个客户端代理设置http代理,以及如何在http代理上设置身份验证?

相关:
- 如何设置代理与凭证到生成的wcf-client

wcf proxy http webproxy

47
推荐指数
3
解决办法
8万
查看次数

Git代理绕过

Git通过设置http.proxy配置参数在代理环境中工作.

对于某些地址,我需要绕过代理.是否有无代理/绕过代理配置参数?

git proxy http

47
推荐指数
4
解决办法
7万
查看次数

解.有代理时如何安装_github

当您尝试从GitHub的存储库安装一些R包时

install_github('rWBclimate', 'ropensci')
Run Code Online (Sandbox Code Playgroud)

如果您有以下错误:

Installing github repo(s) rWBclimate/master from ropensci
Downloading rWBclimate.zip from https://github.com/ropensci/rWBclimate/archive/master.zip
Error in function (type, msg, asError = TRUE)  :
Could not resolve host: github.com; Host not found, try again
Run Code Online (Sandbox Code Playgroud)

显示此错误是因为R尝试通过代理在Intenet上访问.

proxy r github

47
推荐指数
2
解决办法
2万
查看次数

设置HTTP代理以插入标头

我需要测试一些与客户端的HTTP交互,而不是修改.我需要测试的是当客户端的请求包含某个静态头时服务器的行为.

我认为运行此测试的最简单方法是设置一个HTTP代理,在每个请求上插入标头.设置它的最简单方法是什么?

apache proxy proxypass http-headers

46
推荐指数
2
解决办法
10万
查看次数

使用Fiddler嗅探Visual Studio 2013请求(代理防火墙)

我遇到Visual Studio 2013和我们的公司代理问题(登录不起作用,更新不起作用,Visual Studio库不起作用,nuget和git失败).所有这些都在做http或https请求.(例如http://visualstudiogallery.msdn.microsoft.com/).在VS2013中,我只是获得了旋转进度条或没有网络连接的消息.

浏览器(chrome,IE,firefox)没问题,因为他们都理解代理(407拒绝,然后用凭据回复).

所以我想弄明白为什么VS2013不起作用.但是当我告诉fiddler2观看DEVENV.EXE进程(或所有进程)时,我看不到任何流量.

顺便说一下,我已经尝试对web.config(devenv.exe.config)文件进行一些更改,以确保它转到代理(我在堆栈生成器中看到了这个),但它对我不起作用.请参阅以下部分的补充内容:

    <system.net>
                <defaultProxy useDefaultCredentials="true" enabled="true">
                 <proxy proxyaddress="http://gw6.OURSITE.com:3128" />
                </defaultProxy>
      <settings>
        <ipv6 enabled="true"/>
        <servicePointManager expect100Continue="false" />
       </settings>
    </system.net>
Run Code Online (Sandbox Code Playgroud)

更新

埃里克,我接受了你的建议并把它塞进C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE\devenv.exe.config文件中.

我放的是:

  <system.net>
    <defaultProxy useDefaultCredentials="true" enabled="true">
      <proxy autoDetect="false" bypassonlocal="false" proxyaddress="http://127.0.0.1:8888" usesystemdefault="false" />
    </defaultProxy>
  </system.net>
Run Code Online (Sandbox Code Playgroud)

我发现VS2013没有发送用户代理字符串.它确实知道#407 naks并且它使用凭据进行回复,但网关仍然需要用户代理:

HTTP/1.1 200 OK
Cache-Control: no-cache
Pragma: no-cache
Content-Type: text/html; charset=utf-8
Proxy-Connection: close
Connection: close
Content-Length: 1341

<html>
    <head>
        <title>Access Policy Denied: No User-Agent Specified</title>
        <meta name="description" content="Web Access Policy">
    </head>
    <body>
Run Code Online (Sandbox Code Playgroud)

proxy ntlm fiddler wcf-security visual-studio

46
推荐指数
3
解决办法
4万
查看次数

使用HTTP PROXY - Python

我很熟悉我应该将HTTP_RPOXY环境变量设置为代理地址.

一般urllib工作正常,问题是处理urllib2.

>>> urllib2.urlopen("http://www.google.com").read()
Run Code Online (Sandbox Code Playgroud)

回报

urllib2.URLError: <urlopen error [Errno 10061] No connection could be made because the target machine actively refused it>
Run Code Online (Sandbox Code Playgroud)

要么

urllib2.URLError: <urlopen error [Errno 11004] getaddrinfo failed>
Run Code Online (Sandbox Code Playgroud)

额外信息:

urllib.urlopen(....)工作正常!只是urllib2正在玩耍...

我试过@Fenikso的答案,但我现在收到这个错误:

URLError: <urlopen error [Errno 10060] A connection attempt failed because the 
connected party did not properly respond after a period of time, or established
connection failed because connected host has failed to respond>      
Run Code Online (Sandbox Code Playgroud)

有任何想法吗?

python proxy http urllib2

45
推荐指数
3
解决办法
17万
查看次数

通过代理连接SSH

我不知道我在这里做什么,所以如果你能帮助我,请记住这一点!

我试图通过代理连接到我的虚拟服务器,但我无法连接,它只是挂起.我假设这是因为它没有通过我们的代理.

我在家尝试过完全相同的东西,它完美无缺.我正在运行使用终端进行连接的OSX.

任何人都可以告诉我如何通过SSH获取代理?

ssh terminal proxy

45
推荐指数
5
解决办法
15万
查看次数

Charles - 如何使用"客户端地址"字段过滤录制内容?

我正在我的计算机上调试,通过在iPad中添加IP作为代理.我只需要看到来自iPad而不是电脑的流量.

"概述"部分的"客户端地址"字段中提到了iPad的IP.我如何看到来自该IP的请求?

proxy remote-debugging charles-proxy

45
推荐指数
3
解决办法
3万
查看次数

HttpClient和使用代理 - 不断获得407

这是代码:

 HttpClient client = null;
 HttpClientHandler httpClientHandler = new HttpClientHandler()
 {
    Proxy = new WebProxy(string.Format("{0}:{1}", proxyServerSettings.Address, 
    proxyServerSettings.Port),false),
    PreAuthenticate = true,
    UseDefaultCredentials = false,
 };


 this.httpClientHandler.Credentials = new NetworkCredential(proxyServerSettings.UserName, 
                        proxyServerSettings.Password);


 this.client = new HttpClient(this.httpClientHandler);
Run Code Online (Sandbox Code Playgroud)

当我最终这样做时:

HttpResponseMessage httpResponseMessage = this.client.PostAsync(urlToPost, new StringContent(data, Encoding.UTF8, this.mediaType)).Result;
Run Code Online (Sandbox Code Playgroud)

它总是抛出

远程服务器返回错误:(407)需要代理身份验证.

对于我这个世界,我不明白.

在IE10中配置或者我使用HttpWebRequest该类时,相同的代理设置工作正常

.net c# proxy httpclient

45
推荐指数
2
解决办法
6万
查看次数

为什么有些iphone应用程序无法与Charles Proxy完成ssl握手?

我正在使用Charles Proxy来查看我的iphone发出的所有流量.我在我的iphone上安装了ssl证书/配置文件,我可以看到很多ssl加密的流量.但是,某些应用程序似乎没有完成ssl握手.

错误是:"SSLHandshake:握手期间远程主机关闭连接",然后Charles Proxy建议配置应用程序以信任Charles Root证书.当我将配置文件安装到我的iphone上时,我以为我做了什么?

有什么解释这个/解决方法吗?

iphone ssl proxy reverse-engineering ios

45
推荐指数
2
解决办法
2万
查看次数