How to Import Large CSV Files in Laravel with AJAX and Progress Bar
Learn how to import large CSV files into a users table in Laravel using AJAX with a progress bar. This guide includes duplicate checking, chunk processing, and commented code.
laravel application में हम easily REST Api बना सकते हैं , response के लिए आप Laravel Resoures का use कर सकते हैं या simply custom function बनाकर भी JSON response send कर सकते हैं।
Table of contents [Show]
यदि आप लारवेल (Laravel) का उपयोग करके मोबाइल ऐप्स या फ्रंटएंड ऐप्लिकेशन्स के लिए डेटा सर्व करना चाहते हैं, तो REST API एक बेहतरीन विकल्प है। API (Application Programming Interface) एक ऐसा माध्यम है, जो बैकएंड और फ्रंटएंड को जोड़ता है। लारवेल में REST API बनाना बहुत आसान है, खासकर इसके रिसोर्स कंट्रोलर्स और Eloquent ORM की मदद से। इस लारवेल API ट्यूटोरियल इन हिंदी (Laravel API Tutorial in Hindi) में हम आपको स्टेप-बाय-स्टेप बताएँगे कि लारवेल में एक टू-डू लिस्ट API कैसे बनाते हैं, जिसमें CRUD (Create, Read, Update, Delete) ऑपरेशन्स शामिल होंगे। यह ट्यूटोरियल शुरुआती लोगों (Beginners) के लिए आदर्श है। तो, आइए शुरू करें! 🚀
लारवेल से API बनाने की लोकप्रियता के कुछ कारण यहाँ हैं:
जानकारी (Fact): 2025 में 65% डेवलपर्स REST APIs को मोबाइल और वेब ऐप्स के लिए प्राथमिक डेटा सोर्स मानते हैं!
REST API के साथ आप कई प्रकार के प्रोजेक्ट्स बना सकते हैं, जैसे:
सबसे पहले, एक नया लारवेल प्रोजेक्ट बनाएँ। इसके लिए निम्नलिखित चीज़ें तैयार रखें:
कैसे सेट करें?
composer create-project laravel/laravel todo-api
इससे “todo-api” नाम का एक फोल्डर बनेगा।
cd todo-api
php artisan serve
ब्राउज़र में http://localhost:8000
खोलें, आपको लारवेल का वेलकम पेज दिखेगा।
API के लिए टू-डू टास्क्स स्टोर करने के लिए डेटाबेस की आवश्यकता होगी।
.env
फाइल में डेटाबेस डिटेल्स जोड़ें:DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=todo_api_db
DB_USERNAME=your_username
DB_PASSWORD=your_password
todo_api_db
)।php artisan make:model Task -m
database/migrations/
में माइग्रेशन फाइल में निम्नलिखित कोड जोड़ें:Schema::create('tasks', function (Blueprint $table) {
$table->id();
$table->string('title');
$table->text('description')->nullable();
$table->boolean('completed')->default(false);
$table->timestamps();
});
php artisan migrate
app/Models/Task.php
में मॉडल अपडेट करें:namespace App\Models;
use Illuminate\Database\Eloquent\Model;
class Task extends Model
{
protected $fillable = ['title', 'description', 'completed'];
}
CRUD ऑपरेशन्स के लिए API कंट्रोलर बनाएँ।
php artisan make:controller API/TaskController --api
app/Http/Controllers/API/TaskController.php
में निम्नलिखित कोड जोड़ें:namespace App\Http\Controllers\API;
use App\Http\Controllers\Controller;
use App\Models\Task;
use Illuminate\Http\Request;
class TaskController extends Controller
{
public function index()
{
return response()->json(Task::all());
}
public function store(Request $request)
{
$request->validate([
'title' => 'required|max:255',
'description' => 'nullable',
]);
$task = Task::create($request->all());
return response()->json($task, 201);
}
public function show(Task $task)
{
return response()->json($task);
}
public function update(Request $request, Task $task)
{
$request->validate([
'title' => 'required|max:255',
'description' => 'nullable',
]);
$task->update($request->all());
return response()->json($task);
}
public function destroy(Task $task)
{
$task->delete();
return response()->json(null, 204);
}
}
API रूट्स डिफाइन करें।
routes/api.php
में निम्नलिखित कोड जोड़ें:use App\Http\Controllers\API\TaskController;
Route::apiResource('tasks', TaskController::class);
यह रूट्स CRUD ऑपरेशन्स के लिए बनाएगा:
GET /api/tasks
: सभी टास्क्स की लिस्ट।POST /api/tasks
: नया टास्क बनाएँ।GET /api/tasks/{id}
: सिंगल टास्क प्राप्त करें।PUT /api/tasks/{id}
: टास्क अपडेट करें।DELETE /api/tasks/{id}
: टास्क डिलीट करें।API को टेस्ट करने के लिए Postman या cURL का उपयोग करें।
http://localhost:8000/api/tasks
: सभी टास्क्स की लिस्ट।http://localhost:8000/api/tasks
: नया टास्क (JSON बॉडी: {"title": "Test Task", "description": "Test Description"}
)।http://localhost:8000/api/tasks/1
: टास्क ID 1।http://localhost:8000/api/tasks/1
: टास्क अपडेट (JSON बॉडी: {"title": "Updated Task"}
)।http://localhost:8000/api/tasks/1
: टास्क डिलीट।curl -X POST http://localhost:8000/api/tasks \
-H "Content-Type: application/json" \
-d '{"title":"Test Task","description":"Test Description"}'
API को सुरक्षित करने के लिए Laravel Sanctum का उपयोग करें।
composer require laravel/sanctum
php artisan vendor:publish --provider="Laravel\Sanctum\SanctumServiceProvider"
php artisan migrate
app/Models/User.php
में Sanctum ट्रेट जोड़ें:use Laravel\Sanctum\HasApiTokens;
class User extends Authenticatable
{
use HasApiTokens, HasFactory, Notifiable;
}
routes/api.php
में प्रोटेक्टेड रूट्स जोड़ें:Route::middleware('auth:sanctum')->apiResource('tasks', TaskController::class);
curl -X POST http://localhost:8000/api/login \
-H "Content-Type: application/json" \
-d '{"email":"test@example.com","password":"password"}'
टोकन को रिक्वेस्ट हेडर में जोड़ें: Authorization: Bearer your-token
अपने API को ऑनलाइन ले जाएँ।
.env
फाइल को प्रोडक्शन के लिए कॉन्फिगर करें।
REST API से बैकएंड और फ्रंटएंड को अलग रखकर स्केलेबल ऐप्स बनाए जा सकते हैं। **(HQ)**
हाँ, इस laravel api tutorial in hindi गाइड के साथ शुरुआती लोग आसानी से सीख सकते हैं। **(HQ)**
इस गाइड को फॉलो करके 1-2 घंटे। जटिल APIs के लिए 1-2 दिन लग सकते हैं। **(HQ)**
हाँ, Axios या Fetch का उपयोग करके Vue.js में Laravel API को आसानी से इंटीग्रेट किया जा सकता है।
Hostinger पर प्रोजेक्ट अपलोड करें।
इस लारवेल API ट्यूटोरियल इन हिंदी (Laravel API Tutorial in Hindi) के माध्यम से आपने सीखा कि Laravel में REST API कैसे बनाया जाता है। CRUD ऑपरेशन्स, Sanctum सिक्योरिटी, और टेस्टिंग के साथ आपका API प्रोफेशनल बन जाएगा। इस गाइड को फॉलो करें और अपने प्रोजेक्ट्स शुरू करें। यदि आपके कोई सवाल हैं, तो नीचे कमेंट करें। अपनी API को Hostinger पर होस्ट करें और इसे ऑनलाइन ले जाएँ।
अगला क्या सीखें? (What to Learn Next?) Vue.js, Docker, या Laravel Sanctum जैसे टॉपिक्स पर ट्यूटोरियल्स हिंदी में (Tutorials in Hindi) चाहिए? InHindi24.com पर और गाइड्स पढ़ें!
हाय, मैं एक फुल स्टैक डेवलपर (Full Stack Developer) हूँ, जिसके पास 7 साल का अनुभव (7 Years of Experience) है। मेरा जुनून है वेब डेवलपमेंट (Web Development) और कोडिंग (Coding) को आसान (Easy) और मजेदार बनाना, खासकर हिंदी भाषी ऑडियंस के लिए। मैं InHindi24.com पर हिंदी में टेक ट्यूटोरियल्स (Tech Tutorials in Hindi) शेयर करता हूँ, जिसमें लारवेल (Laravel), HTML, CSS, JavaScript, Python, और बहुत कुछ
Learn how to import large CSV files into a users table in Laravel using AJAX with a progress bar. This guide includes duplicate checking, chunk processing, and commented code.
सीखें Laravel में Authentication System कैसे बनाएं, login और registration functionality को step-by-step implement करें इस आसान हिंदी tutorial में। Beginners और developers के लिए perfect guide!
आज के डिजिटल युग में वेबसाइट बनाना (Build a Website) कोई जटिल काम नहीं है। यदि आप अपना बिज़नेस (Business) शुरू करना चाहते हैं, ब्लॉग (Blog) लिखना चाहते हैं, या पोर्टफोलियो (Portfolio) बनाना चाहते हैं, तो एक वेबसाइट आपको ऑनलाइन पहचान (Online Presence) प्रदान करती है। वेबसाइट कैसे बनाएं (Website Kaise Banaye)? यह सवाल हर शुरुआती (Beginner) के मन में आता है।