Vue.js webpack dev server の Proxy で Django + Python social auth のソーシャルプロバイダ認証をする場合
DjangoPHP
2019-03-14 15:19 (7 years ago)

Vue で開発する際、webpack dev server を起動していて、API バックエンドに Django を使っていて、Django の認証に Python social auth + 外部 Auth プロバイダを使っているケース。
そのままだと、外部プロバイダ認証時のコールバックURL が Django の検証サーバのポートになってしまうため、認証ができない。
その場合は、webpack dev server の設定で X-Forwarded-For で webpack dev server にリクエストしているポートを指定し、
vue.config.js
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 にする
Django settings
USE_X_FORWARDED_HOST = True
評価をお願いします
まだ評価がありません
著者は、アプリケーション開発会社 Cyberneura を運営しています。
開発相談をお待ちしています。
開発相談をお待ちしています。