开发者

How do I pass my proxy credentials to a SharePoint Client Context object...? (SharePoint Client Object Model)

I'm writing an applicati开发者_如何学Goon that accesses a SharePoint site using the Client Object Model and I'm behind a proxy server.

I call...

ClientContext.ExecuteQuery()

and receive the following error message...

The remote server returned an error: (407) Proxy Authentication Required.

How do I pass my proxy credentials to the Client Context object...?


You will need to pass the WebProxy (System.Net.WebProxy) object to the WebRequest instance executing your query. One way of doing this is

ClientContext context = new ClientContext("<a valid url>");
context.ExecutingWebRequest += (sen, args) =>
{
  WebProxy myProxy = new WebProxy();
  myProxy.Address = new Uri("http://<proxy_server_address>");

  myProxy.Credentials = new System.Net.NetworkCredential("jack_reacher","<password>", "<domain>");
  args.WebRequestExecutor.WebRequest.Proxy = myProxy;
};
context.ExecuteQuery();

Edit: Fixed typo (ags --> args)


I think you need the following in your app.config inside the <configuration> node:

  <system.net>
    <defaultProxy useDefaultCredentials="true" >
    </defaultProxy>
  </system.net>


Try this in your app.config if your proxy server doesn't require authentication:

<system.net>
  <defaultProxy>
    <proxy
       usesystemdefault="False"
       proxyaddress="http://myproxyserver.company.com:8080"
       bypassonlocal="True"
     />
  </defaultProxy>
</system.net>
0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜