axios 防重放参数
时间: 2023-11-09 21:00:44 浏览: 39
axios 防重放参数可以通过在请求头中添加一个唯一标识符来实现。这个标识符可以是一个随机数、时间戳或者其他的唯一值,每次请求时都会生成一个新的标识符,服务器端会对这个标识符进行校验,如果发现重复的标识符,则认为是重放攻击,拒绝该请求。
具体实现可以参考以下代码:
```javascript
import axios from 'axios'
// 生成唯一标识符
function generateNonce() {
return Math.random().toString(36).substr(2)
}
// 创建 axios 实例
const instance = axios.create({
baseURL: 'https://api.example.com',
timeout: 10000,
headers: {
'X-Nonce': generateNonce() // 添加唯一标识符到请求头
}
})
// 请求拦截器
instance.interceptors.request.use(config => {
config.headers['X-Nonce'] = generateNonce() // 每次请求都生成新的唯一标识符
return config
}, error => {
return Promise.reject(error)
})
// 响应拦截器
instance.interceptors.response.use(response => {
return response.data
}, error => {
return Promise.reject(error)
})
// 发送请求
instance.get('/api/data')
```