Vue で開発する際、webpack dev server を起動していて、API バックエンドに Django を使っていて、Django の認証に Python social auth + 外部 Auth プロバイダを使っているケース。
そのままだと、外部プロバイダ認証時のコールバックURL が Django の検証サーバのポートになってしまうため、認証ができない。
その場合は、webpack dev server の設定で X-Forwarded-For で webpack dev server にリクエストしているポートを指定し、
module.exports = {
devServer: {
proxy: [{
context: ['/auth', '/accounts', '/admin'],
target: 'http://localhost:8014',
headers: {
'X-Forwarded-For': 'http://localhost:8080'
}
}],
},
};
Django の設定で USE_X_FORWARDED_HOST = True にする
USE_X_FORWARDED_HOST = True
コメント