diff --git a/package-lock.json b/package-lock.json index 026a6f1..44d84fd 100644 --- a/package-lock.json +++ b/package-lock.json @@ -3030,6 +3030,14 @@ "resolved": "https://registry.npmjs.org/axe-core/-/axe-core-4.0.2.tgz", "integrity": "sha512-arU1h31OGFu+LPrOLGZ7nB45v940NMDMEJeNmbutu57P+UFDVnkZg3e+J1I2HJRZ9hT7gO8J91dn/PMrAiKakA==" }, + "axios": { + "version": "0.21.0", + "resolved": "https://registry.npmjs.org/axios/-/axios-0.21.0.tgz", + "integrity": "sha512-fmkJBknJKoZwem3/IKSSLpkdNXZeBu5Q7GA/aRsr2btgrptmSCxi2oFjZHqGdK9DoTil9PIHlPIZw2EcRJXRvw==", + "requires": { + "follow-redirects": "^1.10.0" + } + }, "axobject-query": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/axobject-query/-/axobject-query-2.2.0.tgz", diff --git a/package.json b/package.json index 006782f..53113ab 100644 --- a/package.json +++ b/package.json @@ -6,6 +6,7 @@ "@testing-library/jest-dom": "^5.11.6", "@testing-library/react": "^11.1.2", "@testing-library/user-event": "^12.2.2", + "axios": "^0.21.0", "react": "^17.0.1", "react-dom": "^17.0.1", "react-router-dom": "^5.2.0", diff --git a/src/App.js b/src/App.js index 94f819c..1ea951d 100644 --- a/src/App.js +++ b/src/App.js @@ -6,6 +6,8 @@ import { BrowserRouter as Router, Route } from 'react-router-dom'; import NavigationDrawer from './components/NavigationDrawer.js' import BottomMenu from './components/BottomMenu.js' +import AccessToken from './components/AccessToken.js' +import NearbyStation from './components/NearbyStation'; import Tickets from './components/pages/Tickets.js'; import TicketsBuy from './components/pages/TicketsBuy.js'; diff --git a/src/components/AccessToken.js b/src/components/AccessToken.js new file mode 100644 index 0000000..7201228 --- /dev/null +++ b/src/components/AccessToken.js @@ -0,0 +1,65 @@ +import React from 'react'; +import axios from 'axios'; + +var globToken = '' + +const GetToken = () => { + const vars = { + credentials: 'NXR5N2d4bUFmUWxVSERIZG03a2dhcVh3SzVJYTp3cElPVVJuSkpjVHRPNnJPUlltWVlQcTR3WGth', + token: undefined, + device: '123', + } + + const headers = { + 'Content-Type': 'application/x-www-form-urlencoded', + 'Authorization': 'Basic ' + vars.credentials + }; + + axios.post('https://api.vasttrafik.se/token','grant_type=client_credentials&scope=device_'+vars.device, { headers }) + .then(response => { + console.log(response); + globToken = response.data.access_token + }); +} + +class AccessToken extends React.Component { + state = { + token: 'No Token', + } + + handleChange = event => { + this.setState({ token: event.target.value}); + } + + handleSubmit = event => { + event.preventDefault(); + + this.setState({ + credentials: 'Attempting to send token' + }); + GetToken(); + } + + handleFetch = event => { + event.preventDefault(); + this.setState({token: globToken}) + } + + render() { + return ( +