Come effettuare login a Drupal via web service tramite browser?
La domanda è, avendo messo su con un web service tramite il modulo Service, come posso fare il login al mio sito Drupal tramite esso che sia valido per il browser da cui lo faccio?
Sono sicura che la domanda sia malposta, ma provo a spiegare qual'è la mia esigenza così da capire cosa sto sbagliando anche nel porla. Ho bisogno di mettere su un pc su cui ci sia un piccolo software di lettura qrcode che legga dalla webcam del pc un qr code e faccia automaticamente il login al mio sito drupal in un browser, diciamo firefox, per far sì che per un utente sia possibile fare il login al sito semplicemente passando un qr code davanti alla webcam.
Ora, mi viene naturale pensare che questo sia fattibile facendo partire dal software della webcam (che non so ancora di cosa si tratti, chiaro. Assumiamo che esista) una richiesta post che faccia partire il login tramite il web service. Quello che vedo però è che se faccia una richiesta post dal browser con una semplice pagina html tramite una form, ad esempio,
<form action="http://mysite.abc/api_name/user/login" method="post">
<input type="text" name="username" value="foo" />
<input type="text" name="password" value="bar" />
<input type="submit" />
</form>
ricevo risposta dal web service che effettua il login, ma se vado su un'altra scheda del browser e apro il sito NON mi trovo loggata. Cosa sto sbagliando?

Risposte
> Ho bisogno di mettere su un
> Ho bisogno di mettere su un pc su cui ci sia un piccolo software di lettura qrcode che legga dalla webcam del pc un qr code e faccia automaticamente il login al mio sito drupal in un browser, diciamo firefox, per far sì che per un utente sia possibile fare il login al sito semplicemente passando un qr code davanti alla webcam.
-----
Considerando che devi allestire un pc specifico valuterei di aggiungere un software di tipo macro che apra il brower e che si logghi al sito.
Semmai il qr code lo userei come condizione per accedere alla macro.
Credo che così dovresti lavorare un po di più con cose strane solo dentro lo stesso pc
con il vantaggio di non sottostare alle modifiche eventuali degli aggiornamenti di quanto è nel server remoto.
--------
Grazie per la risposta. E'
Grazie per la risposta. E' esattamente quello che intendo. E' il punto 'apra il brower e che si logghi al sito' che non riesco a realizzare.
Btw, da ieri ho fatto qualche progresso. Utilizzando il codice script di Michael Cole (https://www.drupal.org/node/910598) + l'aggiunta del token di tripper54 riesco a fare il login e ho capito che il problema sta nella gestione della sessione.
Lanciare lo script di login mi restituisce un id di sessione (SESSfoo_1) e un token di session (bar1234_1), e imposta un cookie con detti valori nel mio browser.
Il loggarmi tramite l'interfaccia del sito da browser fa la stessa cosa, impostando un cookie (SESSfoo_2) e relativo token (bar1234_2).
Il punto è che i due id di sessione sono diversi e vengono prodotti due cookie...
Se però prendo il valore del token di sessione restituito dallo script (bar1234_1) e lo incollo al posto del valore del suo token sessione prodotto dal login dal sito (bar1234_2) e ricarico la pagina, mi ritrovo correttamente loggata... In pratica faccio diventare SESSfoo_2=bar1234_1 e tutto funziona.
C'è qualcosa che non capisco.