2011-01-10 58 views
0

我有一個ASP.NET MVC 3應用程序與一些Facebook集成使用Facebook C#SDK與cookie支持打開。是否可以重寫Facebook C#SDK中的CookieSupport配置?

我已經計劃(並且仍然希望)創建一個畫布Facebook應用程序作爲主應用程序的一個區域。問題在於canvas應用程序需要關閉cookie支持。無論如何要覆蓋區域內的這個設置,還是我卡住了?

更新11/01/2011 我用web.config中的location節點以覆蓋cookieSupport設置。

<location path="facebook"> 
    <facebookSettings 
    appSecret="***" 
    appId="***" 
    cookieSupport="false" /> 

    <canvasSettings 
    canvasPageUrl="http://apps.facebook.com/***/" 
    canvasUrl="http://www.***.co.uk/facebook/" 
    authorizeCancelUrl="http://apps.facebook.com/***/home/cancel" /> 
</location> 

它似乎驗證已授權應用程序沒有問題的用戶。然而,尚未被授權的用戶沒有得到認證(他們沒有看到權限對話框)。

我應該強調,當Area'facebook'的結構被放入它自己的應用程序中時,配置可以按預期工作。

豐富

+0

看起來我已經能夠使用web.config中的位置節點來完成它了。進一步測試將證實這一點。 – kim3er 2011-01-10 23:02:38

+0

我希望有人能幫我解決這個問題,我真的不想創建第二個應用程序。 – kim3er 2011-01-11 12:08:31

回答

2

即使你無法通過區域特有的web.config文件做,你總是可以只跳過在web.config中的設置和手動設置:

FacebookSettings facebookSettings = new FacebookSettings 
    { 
     AppId = yourAppId, 
     AppSecret = yourSecret, 
     BaseDomain = yourDomain, 
     CookieSupport = false, 
     MaxRetries = 2, 
     RetryDelay = 500 
    }; 
    var app = new FacebookApp(facebookSettings);