Facebook SDK代理设置C#

时间:2012-09-03 16:07:51

标签: facebook-c#-sdk

我使用Facebook SDK .net,但我使用代理验证连接到互联网 我得到错误(407)(407)代理身份验证需要如何在Facebook SDK上设置身份验证

2 个答案:

答案 0 :(得分:8)

FacebookClient中有一个静态方法,允许您全局设置它。

[EditorBrowsable(EditorBrowsableState.Never)]
public static void SetDefaultHttpWebRequestFactory(Func<Uri, HttpWebRequestWrapper> httpWebRequestFactory)

您可能无法在intellisense中看到它,因为它默认是隐藏的。

如果你想要每个实例,你可以使用该属性。

[EditorBrowsable(EditorBrowsableState.Never)]
public virtual Func<Uri, HttpWebRequestWrapper> HttpWebRequestFactory { get; set; }

这是一个例子。

FacebookClient.SetDefaultHttpWebRequestFactory(uri => {
    var request = new HttpWebRequestWrapper((HttpWebRequest)WebRequest.Create(uri));
    request.Proxy = ......; // normal .net IWebProxy
    return request;
});

答案 1 :(得分:0)

使用FacebookClient发布到Facebook页面时,我最近遇到了此问题。在我的情况下,我有一个负责Facebook交互的WCF服务,该服务位于公司代理的后面。 This stackoverflow answer为我解决了该问题,但要求将服务的IIS应用程序池用户标识设置为具有域凭据的用户,否则返回407错误。因此,将应用程序池标识设置为域帐户,并将以下内容添加到web.config:

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