Résumer les changements lors du changement de méthode d'authentification de l'application (mode Vue.js + Rails API) dans une carrière de l'authentification par jeton à la session (cookie)
** En raison de la nécessité de se connecter de manière transparente à partir d'une application Web existante **
――Comment enregistrer de manière transparente un utilisateur qui s'est connecté sur un écran implémenté dans une application Web normale sur un écran créé par SPA
Cette fois, nous sommes passés à l'authentification de session avec priorité à la date de livraison
config/application.rb
# Only loads a smaller set of middleware suitable for API only apps.
# Middleware like session, flash, cookies can be added back manually.
# Skip views, helpers and assets when generating a new resource.
config.api_only = false # <-Changer faux en vrai
Si vous voulez que la session stocke un cookie, vous pouvez le faire en définissant config.api_only = true
et en chargeant l'usure intermédiaire requise, mais c'est tout.
En raison des restrictions ci-dessus, j'ai changé api_only en false. (Veuillez me dire s'il existe un bon moyen d'utiliser api_only = true et de concevoir: bow :)
class ApplicationController < ActionController::API
include ActionController::Cookies #<-Ajoute ça
Ce paramètre était également nécessaire lors de la création en héritant de ActionController :: API.
axios.create({
withCredentials: true,
//...
})
axios Il s'agit d'une fonction pour envoyer un cookie de domaine différent, mais si ce n'est pas activé, le cookie de session ne peut pas être utilisé.