webForumDet fria alternativet

Problem med Facebook c# SDK

.NET

0 svar · 1 056 visningar · startad av Vinnaren

Medlem sedan sep. 2005833 inlägg
Frågan#1

Hej,

försöker bygga en facebook app med Facebook c# SDK (http://facebooksdk.codeplex.com/).
Första gången man besöker appen skickas man vidare till sidan där man får acceptera de efterfrågade rättigheterna. Det är när man accepterar dessa rättigheter som det blir fel, man skickas till startsidan för facebook.
Jag vill naturligtvis skicka användaren till min startsida(Default.aspx) för appen.

Adressen jag blir skickad till vid rättighetsförfrågan är:
http://www.facebook.com/connect/uiserver.php?app_id=\<APPID>&method=permissions.request&display=page&next=http%3A%2F%2Flocalhost%3A2143%2Ffacebookredirect.axd&response_type=code&state=eyJyIjoiaHR0cDovL2FwcHMuZmFjZWJvb2suY29tL2Jhcm5kYWdib2tlbi9EZWZhdWx0LmFzcHgifQ&fbconnect=1&perms=email

Varför står det facebookredirect.axd, och inte Default.aspx som är min startsida? Ändrar jag manuellt denna adressrad till:

http://www.facebook.com/connect/uiserver.php?app_id=\<APPID>&method=permissions.request&display=page&next=http%3A%2F%2Flocalhost%3A2143%2Ffacebookredirect.axd/Default.aspx&response_type=code&state=eyJyIjoiaHR0cDovL2FwcHMuZmFjZWJvb2suY29tL2Jhcm5kYWdib2tlbi9EZWZhdWx0LmFzcHgifQ&fbconnect=1&perms=email

dvs lägger till /Default.aspx efter facebookredirect.axd så hamnar jag på min startsida när jag accepterar rättigheterna.

I min web.config har jag detta bla:

  <configSections>
    <section type="Facebook.FacebookConfigurationSection, Facebook" name="facebookSettings" allowLocation="true" allowDefinition="Everywhere" />
    <section name="canvasSettings" type="Facebook.Web.CanvasConfigurationSettings, Facebook.Web" />
  </configSections>

  <facebookSettings canvasPage = "http://apps.facebook.com/<APPNAME>/" secureCanvasUrl="http://localhost:2143/" canvasUrl="http://localhost:2143/" appSecret="<APPSECRET>" appId="<APPID>" cancelUrlPath = "" />
  <canvasSettings canvasUrl="http://localhost:2143/" canvasPageUrl="http://apps.facebook.com/<APPNAME>/" authorizeCancelUrl="http://facebook.com"/>
  

      <httpHandlers>
    <add verb="*" path="/" type="System.Web.UI.Page"/>
      <add verb="*" path="facebookredirect.axd" type="Facebook.Web.FacebookAppRedirectHttpHandler, Facebook.Web" />

  </httpHandlers>

  <system.webServer>
    <validation validateIntegratedModeConfiguration="false" />
    
    <modules runAllManagedModulesForAllRequests="true" />
    <handlers>
      <add name="facebookredirect.axd" verb="*" path="facebookredirect.axd" type="Facebook.Web.FacebookAppRedirectHttpHandler, Facebook.Web" />
    </handlers>
  </system.webServer>

Har även skapat en mapp vid namn facebookredirect.axd och däri lagt en web.config fil med följande:

<?xml version="1.0"?>
<configuration>
  <system.web>
    <httpHandlers>
      <clear/>
      <add path="*" verb="*" type="Facebook.Web.FacebookAppRedirectHttpHandler, Facebook.Web" />
    </httpHandlers>
  </system.web>
  <system.webServer>
    <handlers>
      <clear/>
      <add name="facebookredirect" path="*" verb="*" type="Facebook.Web.FacebookAppRedirectHttpHandler, Facebook.Web" />
    </handlers>
  </system.webServer>
</configuration>

På min startsida har jag:


            CanvasAuthorizer auth = new CanvasAuthorizer { Permissions = new[] { "email" } };

            if (auth.Authorize())
            {
                FacebookWebClient client = new FacebookWebClient();
                dynamic parameters = new ExpandoObject();
                parameters.fields = "id, name, third_party_id, username";
                dynamic result = client.Get("me", parameters);
           }

Vad har jag gjort för fel? Varför skickas jag inte automatiskt till min Default.aspx sida när jag har accepterat rättigheterna?

Tacksam för all hjälp! :stud

255 ms totalt · 4 externa anrop · v20260731065814-full.1dc6f849
124 ms — deklarationer (db)
0 ms — hämta statistik (cache)
129 ms — hämta tråd, inlägg och bilagor (db)
123 ms — ändringar (db)