在開發階段有時會將 API 取消 SSL 檢查,在 Axios 有兩種方式設定。
Version
macOS Catalina 10.15.3
Node 12.4.0
Axios 0.19.2
Request Level
import axios from 'axios'
import { Agent } from 'https'
let httpsAgent = new Agent({
rejectUnauthorized: false
})
axios.get(uri, { httpsAgent })
由 https
取出 Agent
建立 httpsAgent
的 rejectUnauthorized
為 false
,並在 axios.get()
的第二個 argument 傳入。
Instance Level
import axios from 'axios'
import { Agent } from 'https'
let httpsAgent = new Agent({
rejectUnauthorized: false
})
let myAxios = axios.create({
httpsAgent
})
myAxios.get(uri)
也可將 httpsAgent
傳入 axios.create()
建立 Axios instance,如此則不用每個 get()
都設定。
Conclusion
- 若要整個 project 使用相同設定,則使用 instance level 較方便