2012-02-16 2 views
0

IE9의 XDomainRequest가 인증 또는 쿠키를 보내지 않습니다 (# 5 http://blogs.msdn.com/b/ieinternals/archive/2 010/05/13/xdomainrequest-restrictions-limitat ions-and-workarounds.aspx).drupal 세션을 유지하면서 IE와 XDomainRequests를 어떻게 사용할 수 있습니까?

모든 데이터 요청을 인증 된/세션 컨텍스트 내에서 작성해야합니다.

일반적으로 세션 토큰을 명시 적으로 XDomainRequest에 추가 한 다음 백엔드에서 drupal의 sess_read()를 사용하여 세션을 검색합니다. 그러나 api는 다양한 원하지 않는 부작용 (http://api.drupal.org/api/drupal/includes%21s ession.inc/6)을 인용하여 sess_read()를 직접 호출하지 말 것을 권장합니다.

누구든지이 문제를 성공적으로 사용하고 있습니까? 아니면 다른 해결책을 찾았습니까? 세션 컨텍스트 (때문에 만 $의 sessionKey를 포함하는 익명 요청) 손실 된 경우, 우리는이와 사용자 세션/사용자 ID를 검색 할 수 있습니다

:

답변

0

이 해결책이 될 것으로 보인다

$userFetched = db_fetch_object(db_query("SELECT u.*, s.* FROM {users} u INNER JOIN {sessions} s ON u.uid = s.uid WHERE s.sid = '%s'", $sessionKey)); 

//assuming sessionKey was valid, then $userFetched->uid will contain the user's id. 
관련 문제