Burada listelemek için çok fazla varyasyon denedim, ancak temel nokta, Hizmetler aracılığıyla kayıttan hemen sonra kullanıcının oturum açamam. Sadece Services 7.x.3.11 etkin ve drupalgap 7.x.1.9 tarafından sağlanan varsayılan kaynak ayarları ile yeni bir Drupal 7.33 yüklemesini denedim
Drupal arayüzünü kullanarak kaydolduğumda kullanıcı oluşturulur, oturum açılır ve oturum açtığım profil sayfama iniyorum.
vs.
Hizmetler uç noktasını çağırdığımda /services/user/register.json
, Drupal hesabı oluşturur, ancak oturum devam etmez. Aşağıdaki ekran görüntülerime bakın.
Bir sonraki hizmet kaynak çağrıları için devam etmek için nasıl oturum alabilirim VEYA B. /login.json form istemci tarafı programlı olarak yeniden gönderebilirsiniz böylece kullanıcı veya otomatik oluşturulan parola tekrar json yanıt eklemek için kanca devam eder)?
Bu soru , küresel $ kullanıcısı Drupal arayüzü ve Servisler modülü arasında nasıl farklı olabilir? LoginToboggan kullanarak aynı sorunumu anlatıyor.
Ekran görüntümde "login debug" adlı bir hata ayıklama satırı göreceksiniz. Tüm bunları boşuna denedim nerede "/sites/all/modules/logintoboggan/logintoboggan.module" 333 satır geliyor ...
function logintoboggan_process_login($account, &$edit, $redirect = array()){
global $user;
$user = user_load($account->uid);
//watchdog('login debug', json_encode($account));
watchdog('login debug', json_encode($edit));
//user_login_submit(array(), array('uid' => $account->uid));
user_login_finalize($edit);
// $user = user_load($account->uid);
// $user->token = drupal_get_token('services'); // WE HAVE A TOKEN ALTHOUGH I DOUBT THIS WOULD WORK IN TERMS OF SESSION PERSISTANCE
// user_login_finalize($edit);
// module_invoke_all('hook_user_login');
// module_invoke_all('tripchi_user_login');
// module_invoke_all('logintoboggan_user_login');