File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change 11import axios from 'axios'
2- import React , { useEffect , useState } from 'react'
2+ import React , { useEffect , useState , useRef } from 'react'
33import './CarbonAd.css'
44import { getBaseApi } from '../utils/DataUtils'
55
66export default function CarbonAd ( ) {
77 const [ ad , setAd ] = useState ( )
8+ const cancelTokenSource = useRef ( )
89
910 useEffect ( ( ) => {
11+ cancelTokenSource . current = axios . CancelToken . source ( )
12+
1013 const setup = async ( ) => {
1114 const userAgent = new URLSearchParams ( navigator . userAgent ) . toString ( )
12- const request = await axios . get ( `${ getBaseApi ( '' ) } /monetization/?useragent=${ userAgent } ` )
13- if ( request . data ) {
14- setAd ( request . data . ads [ 0 ] )
15- }
15+ try {
16+ const request = await axios . get ( `${ getBaseApi ( '' ) } /monetization/?useragent=${ userAgent } ` , {
17+ cancelToken : cancelTokenSource . current . token ,
18+ } )
19+ if ( request . data ) {
20+ setAd ( request . data . ads [ 0 ] )
21+ }
22+ } catch ( _ ) { }
1623 }
1724 setup ( )
25+ return ( ) => {
26+ cancelTokenSource . current . cancel ( )
27+ }
1828 } , [ ] )
1929
2030 const prependHTTP = ( url ) => {
2131 url = decodeURIComponent ( url )
2232 if ( ! / ^ (?: f | h t ) t p s ? \: \/ \/ / . test ( url ) ) {
23- url = 'https:// ' + url
33+ url = 'https:' + url
2434 }
2535 return url
2636 }
You can’t perform that action at this time.
0 commit comments