مقدمهای بر Axios
Axios یک کتابخانه محبوب جاوااسکریپت است که برای ارسال درخواستهای HTTP به کار میرود. این کتابخانه به خصوص در پروژههای React و Vue.js بسیار مورد استفاده قرار میگیرد. یکی از ویژگیهای بارز Axios پشتیبانی از Promise است که کار با درخواستهای غیرهمزمان را آسانتر میکند.
درخواست GET با Axios
درخواست GET برای دریافت دادهها از سرور استفاده میشود. کافی است URL مورد نظر را مشخص کنید.
```javascript
axios.get('https://api.example.com/data')
.then(response => {
console.log(response.data);
})
.catch(error => {
console.error('Error fetching data:', error);
});
```
در این کد، ابتدا یک درخواست GET به URL مشخص شده ارسال میشود. اگر درخواست موفق باشد، دادهها در `response.data` قرار میگیرند. در غیر این صورت، خطا در کنسول چاپ میشود.
درخواست POST با Axios
درخواست POST برای ارسال دادهها به سرور استفاده میشود. به عنوان مثال، فرض کنید میخواهیم اطلاعات یک کاربر جدید را به سرور ارسال کنیم.
```javascript
axios.post('https://api.example.com/users', {
name: 'John Doe',
email: 'john@example.com'
})
.then(response => {
console.log('User created:', response.data);
})
.catch(error => {
console.error('Error creating user:', error);
});
```
در اینجا، ما یک درخواست POST ارسال میکنیم که شامل اطلاعات کاربر است. اگر درخواست موفق باشد، سرور ممکن است اطلاعات کاربر جدید را برگرداند.
نکات مهم
- پشتیبانی از توکن: اگر نیاز به احراز هویت دارید، میتوانید توکنها را به درخواستها اضافه کنید.
```javascript
axios.post('https://api.example.com/users', {
headers: {
'Authorization': `Bearer ${token}`
}
});
```
- مدیریت خطا: همیشه باید مدیریت خطا را در نظر بگیرید تا از بروز مشکلات جلوگیری شود.
نتیجهگیری
Axios ابزار بسیار قوی و انعطافپذیری برای کار با HTTP در جاوااسکریپت است. با استفاده از درخواستهای GET و POST، میتوانید به راحتی با سرور ارتباط برقرار کنید و دادهها را دریافت یا ارسال کنید. با توجه به امکانات بیشتر Axios، این کتابخانه انتخابی عالی برای توسعهدهندگان است.
کدهای Axios برای درخواستهای HTTP، مخصوصا درخواستهای POST و GET، در برنامهنویسی وب بسیار پرکاربرد هستند. این کدها به توسعهدهندگان اجازه میدهند تا به راحتی دادهها را از سرور دریافت یا به آن ارسال کنند. حالا بیایید با جزئیات بیشتری درباره هر کدام صحبت کنیم.
درخواست GET با Axios
درخواست GET برای دریافت دادهها از سرور استفاده میشود. مثلا فرض کنید میخواهید لیستی از کاربران را دریافت کنید. کد Axios برای این کار ساده است:
```javascript
axios.get('https://api.example.com/users')
.then(response => {
console.log(response.data); // دادههای دریافتی
})
.catch(error => {
console.error(error); // خطاهای احتمالی
});
```
در اینجا، آدرس URL مورد نظر را وارد میکنیم، و سپس با استفاده از متد `.then()` نتیجه را پردازش مینماییم. در صورت بروز خطا، آن در قسمت `.catch()` مدیریت میشود.
درخواست POST با Axios
درخواست POST بیشتر برای ارسال دادهها به سرور کاربرد دارد. مثلا فرض کنید کاربری فرم ثبتنام را پر کرده و میخواهید این دادهها را برای سرور بفرستید:
```javascript
axios.post('https://api.example.com/register', {
username: 'ali',
password: '123456'
})
.then(response => {
console.log(response.data); // پاسخ سرور
})
.catch(error => {
console.error(error); // خطاهای احتمالی
});
```
در این حالت، دومین پارامتر، شیء حاوی دادههایی است که میخواهید ارسال کنید. Axios این دادهها را به صورت JSON به سرور میفرستد.
مقایسهی کلی
- GET: برای دریافت دادهها، بدون تغییر در سرور.
- POST: برای ارسال دادهها و ایجاد یا بروزرسانی رکوردها در سرور.
نکات مهم
- در هر دو حالت، میتوانید هدرهای اضافی هم اضافه کنید، مانند توکنهای احراز هویت.
- استفاده از async/await هم امکانپذیر است، که باعث میشود کد خواناتر و سادهتر شود.
مثال با async/await:
```javascript
async function fetchData() {
try {
const response = await axios.get('https://api.example.com/users');
console.log(response.data);
} catch (error) {
console.error(error);
}
}
```
در کل، Axios یک کتابخانه قدرتمند و ساده است که کار با درخواستهای HTTP را بسیار راحت میکند، و هر توسعهدهنده باید با آن آشنا باشد. این ابزار، چه برای پروژههای کوچک و چه بزرگ، بسیار مفید است و روند توسعه را سرعت میبخشد.