axiosのリクエストインターフェースの方法は何ですか?
axiosのリクエストインターフェースをカプセル化する方法は、axiosインスタンスを作成し、そのインスタンスを使用してリクエストを送信することができます。次に、axiosのリクエストインターフェースをカプセル化する方法の例を示します。
import axios from 'axios';
// 创建axios实例
const instance = axios.create({
baseURL: 'https://api.example.com', // 请求的基础URL
timeout: 5000, // 请求超时时间
headers: {
'Content-Type': 'application/json' // 设置请求头为JSON格式
}
});
// 封装GET请求方法
export function get(url, params) {
return new Promise((resolve, reject) => {
instance.get(url, { params })
.then(response => {
resolve(response.data);
})
.catch(error => {
reject(error);
});
});
}
// 封装POST请求方法
export function post(url, data) {
return new Promise((resolve, reject) => {
instance.post(url, data)
.then(response => {
resolve(response.data);
})
.catch(error => {
reject(error);
});
});
}
例えば、axiosのinstanceを作成し、基本URL、タイムアウト時間、リクエストヘッダーを設定。その後、GETおよびPOSTリクエストメソッドをラップし、それぞれinstance.getとinstance.postでリクエストを送信。これにより、プロジェクト内で直接getやpostメソッドを呼び出してリクエストを送信し、成功や失敗時にPromiseのresolveやrejectを使って結果やエラーメッセージを返すことができます。