Con la cache Magento 2.0.4 , in particolare la cache della pagina abilitata , tutto funziona.
Se lo disabilito, cancella i cookie e accedo come cliente rispetto ai prodotti in Minicart non ci sono.
Il messaggio di benvenuto non funziona davvero bene. Devo aggiungere un prodotto al carrello da una pagina del prodotto per vedere la minicart. Se vado alla cassa, il paese non viene visualizzato nel riepilogo dell'indirizzo (indirizzo di spedizione già aggiunto nel mio account).
Ho fatto degli errori e sembra che il problema sta puntando:
module-customer/view/frontend/web/js/customer-data.js. Il cookie private_content_versionè impostato module-page-cache/view/frontend/web/js/page-cache.jse utilizzato in customer-data.js. Vedi customerData::reloadfunzione
Con la cache della pagina disabilitata, i dati non vengono caricati dal server come fa la funzione dataProvider::getFromServer().
Quando la cache della pagina è disabilitata, il cookie private_content_version non è presente (la pagina-cache.js non viene eseguita fuori rotta). Ma il cookie section_data_idsha solo '*' e 'messaggi' => vuoto (falso o nullo).
Quando la cache della pagina è abilitata c'è private_content_versione section_data_idsha quali chiavi con valori:
*: null
cart: 123
compare-products: 123
customer: 123
directory-data: 123
last-ordered-items: 123
multiplewishlist: 123
review: 123
wishlist: 123
Dopo aver effettuato l'accesso con la cache della pagina abilitata, nella dashboard del cliente ci sono altre 2 richieste Ajax che caricano i dati:
http://test.localhost/customer/section/load/?sections=&update_section_id=false&_=123
http://test.localhost/customer/section/load/?sections=directory-data&update_section_id=false&_=123
Questi contengono oggetti json con dati specifici del cliente e dati di directory come tutti i paesi e le regioni. Con queste chiamate, al checkout il riepilogo dell'indirizzo visualizza il nome del paese. Vedi: module-customer/view/frontend/web/js/sections-config.js
e module-checkout/view/frontend/web/js/view/shipping-address/address-renderer/default.js, funzione getCountryName.
È un bug di Magento 2 o è qualcosa che ho sbagliato? Grazie
GET http://example.com/customer/section/load/?sections=&update_section_id=false&_=1462374643065 500 (Internal Server Error)