Aplicația Facebook Connect IFRAME nu funcționează în IE7

voturi
5

Sunt construirea unei aplicații Facebook Connect care funcționează în interiorul unui obiect gadget Google. Fiind un gadget înseamnă că aplicația se execută în cadrul unui iframe. În interiorul aplicației, există o formă care permite utilizatorilor înregistrați pentru a posta comentarii. Depunerea se face folosind AJAX, dar am obține aceleași rezultate cu o formă normală. Problema este că am nevoie pentru a obține utilizatorului facebook ID-ul. În Firefox, funcționează bine, dar pe Internet Explorer 7, am obține următoarea eroare:

 'A session key is required for calling this method'

Eu cred că acest lucru se datorează modului IE gestionează cookie-urile terță parte, pentru că dacă mă duc la Opțiuni Internet / privacy / Advanced, și verificați de manipulare automată a modulelor cookie Override și să accepte toate cookie-urile, funcționează bine. Nu pot trece id-ul Facebook de JavaScript, deoarece oricine ar putea falsifica.

EDIT: Dacă am deschis conținutul iframe direct, aplicația funcționează bine. Problema este într-adevăr din cauza IFRAME și modelul de securitate IE.

Ce fac ceva greșit? Cum pot rezolva această problemă?

Întrebat 16/02/2009 la 19:10
sursa de către utilizator
În alte limbi...                            


4 răspunsuri

voturi
1

Am găsit o soluție provizorie, care funcționează, deși este un pic urât: atunci când utilizatorul face clic pe butonul „Conectare“, se deschide un pop-up care vine de pe propriul site și care conține butonul de conectare Facebook Connect. După ce utilizatorul se conectează, am închide fereastra pop-up și reîncărcați iframe.

Acest lucru este foarte urât pentru că deschide două ferestre pop-up, dar cel puțin funcționează. Voi detecta dacă cookie-urile sunt activate folosind JavaScript și dacă acestea sunt activate, voi sări peste primul pop-up.

Sunt încă deschis la soluții mai bune ...


Editare : Facebook folosește acum un „fals“ pop - up pop - up în interiorul meu, în loc de a deschide o altă fereastră. Acum am doar un singur tip pop - up , care este în regulă pentru mine.

Publicat 16/02/2009 la 21:17
sursa de către utilizator

voturi
7

Ați încercat adăugarea unei politici P3P?

Dacă setarea cookie răspunsul are o politică compactă, IE va folosi pentru a determina dacă este sau nu pentru a permite treilea cookie parte ..

Publicat 17/02/2009 la 04:01
sursa de către utilizator

voturi
3

Am rezolvat aceeași problemă prin modificarea cum am verifica daca utilizatorul a fost conectat pe pagina PHP ca urmare a unei FB conecta de conectare.

Deci, ei conecta la FB Conecteaza-te cu IE7. În continuare și pagina sarcini ulterioare în cazul în care am nevoie pentru a verifica dacă acestea sunt într-adevăr, conectat la FaceBook am folosit următorul cod (rețineți că $ facebook-> require_login () și alte funcții care nu au de lucru - s-au întors nul numai în IE 7):

// Validate from Facebook that session is valid and user is logged in. require_once 'facebook/facebook.php'; $facebook = new Facebook(YourAppsAPIKeyPublic, YourAppsAPIKeySecret); $facebook->api_client->session_key = $this->userAPISessionKey; $fb_user_id = $facebook->api_client->users_getLoggedInUser();

De $ fb_user_id ar trebui să aibă acum un act de identitate valabil utilizator Facebook.

Politica privind confidențialitatea și Facebook Connect + IE 7:

Deși acest lucru nu a funcționat pentru mine pare să lucreze pentru alții. în htaccess:

Header append P3P "CP=\"HONK\""

sau în fișiere PHP:

header('P3P: CP="CAO PSA OUR"'); sau header('P3P: CP="HONK"');

referință: http://forum.developers.facebook.com/viewtopic.php?id=28636

ASP.NET:

protected void Application_BeginRequest(Object sender, EventArgs e)
{
    HttpContext.Current.Response.AddHeader("p3p", "CP=\"CAO PSA OUR\"");
}
Publicat 30/06/2009 la 19:20
sursa de către utilizator

voturi
0

poate doriți să vedeți acest fir, de asemenea, care este creat sub platforma de dezvoltator Facebook

http://forum.developers.facebook.com/viewtopic.php?id=452

Publicat 22/03/2010 la 12:38
sursa de către utilizator

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more