React ajax test
HTML
<script src="https://npmcdn.com/@reactivex/rxjs@5.0.0-beta.4/dist/global/Rx.umd.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/react/15.0.1/react.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/react/15.0.1/react-dom.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/axios/0.12.0/axios.js"></script>
<div id='app'>
Will render into here
</div>
Babel + JSX
class App extends React.Component {
constructor(props) {
super(props)
this.state = {
data: null
}
axios.interceptors.response.use(response => {
return response;
}, error => {
console.log("interceptors ", error)
if (error.response && error.response.status && error.response.statuserror.response.status === 401) {
window.alert(401);
}
return Promise.reject(error);
});
}
test401() {
var self = this;
axios.post('https://mail.google.com/sync/u/0/i/fd?hl=en&c=12')
.catch( (error) => {
self.setState({data: error.status || "No Status" });
console.log("catch ", error);
});
}
render() {
return <div>
<button onClick={this.test401.bind(this)}>Try 401 response</button>
<div>{this.state.data}</div>
</div>
}
}
ReactDOM.render(<App />, document.querySelector('#app'))