Bentornato race
E' probabile che Facebook utilizzi qualche framework frontend che, per via del suo funzionamento, non riconosce il testo che è stato inserito da codice.
Per esempio, so che Facebook usa React in diversi posti (dopotutto l'hanno inventato loro). Se quella sezione fosse gestita da React, allora il problema diventa evidente: il testo del post viene registrato nello "stato" del componente. Per farlo, il codice si mette in ascolto di un evento sullo span (o dove è più comodo per loro). Dato che inserisci il testo direttamente da codice, nessun evento viene generato e lo stato del componente non viene aggiornato. Questo spiegherebbe perché quando poi hai inserito del testo manualmente il post conteneva solo quella parte di testo.
Quella sopra è solo una supposizione, ma diversi framework funzionano in questo modo, quindi è probabile che il problema sia quello.
Per risolvere il problema potresti valutare alcune cose:
- Tu hai detto di avere già del codice che crea post, ma che non riesci ad inserire le emoji. Hai provato a controllare se inserendo direttamente il carattere unicode in qualche modo sei in grado di inserirle?
- L'API di facebook potrebbe consentirti di creare post da javascript, e penso accetti le emoji senza problemi (
questa pagina sembra fare al caso tuo). Comunque, potresti aver già provato questa soluzione
- Se il codice javascript gira su Node, potresti provare ad usare
puppeteer, che ti permette di aprire un browser (chromium) senza interfaccia grafica e ti consente di fare in questo browser qualsiasi cosa tu sia in grado di fare manualmente.
Buona fortuna col tuo progetto