1
0
mirror of https://github.com/mgerb/classic-wow-forums synced 2026-01-11 09:32:51 +00:00
Files
classic-wow-forums/client/app/pages/oauth/oauth.tsx

33 lines
846 B
TypeScript

import React from 'react';
import { RouteComponentProps } from 'react-router-dom';
import { parse } from 'query-string';
import axios from '../../axios/axios';
interface Props extends RouteComponentProps<any> {}
interface State {}
export class Oauth extends React.Component<Props, State> {
componentDidMount() {
this.login(this.props.location.search);
}
private async login(queryString: string) {
try {
const code = parse(queryString).code;
const res = await axios.post('/api/battlenet/authorize', { code });
const account = res.data.data;
localStorage.setItem('account', JSON.stringify(account));
window.opener.location.reload();
// TODO: this doesn't work on mobile currently
window.close();
} catch (e) {
console.error(e);
}
}
render() {
return <div />;
}
}