مسا الخير شباب كيفكن
انا أقوم ببرمجة موقع إختصار روابط بإستخدام laravel 5.3
كما نعلم كل من يدخل الموقع يستطيع إختصار الروابط إذا كان زائر أو كان عضو مسجل في الموقع
بصراحة هنا لم اعرف التعامل مع ال middleware كما نعلم ان بداية كل class في laravel
نقوم بتحديد نوع ال middleware إذا كان للمستخدمين أو للزوار
لدي الكلاس التالي لإختصار الروابط:
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\Nitaq\Shorten;
use App\Link;
use App\User;
class LinksController extends Controller
{
/**
- Create a new controller instance.
*
- @return void
*/
public function __construct()
{
$this->middleware('auth');
}
public function shortenLink(Request $request) { $link_alias = [];
// Create object of Shorten class
$shorten = new Shorten();
// Object of Link
$link = new Link();
$link->link_original = $request['link_original'];
$link->link_title = $request['link_title'];
$link->link_desc = $request['link_desc'];
if (!empty($request['link_password'])) {
$link->link_password = password_hash($request['link_password'], PASSWORD_BCRYPT, ["cost" => 12]);
}
$link->link_alias = $request['link_alias'];
if ($request->user()->links()->save()) {
$message = true;
} else {
$message = false;
}
return response()->json(['message' => $message], 200);
}
}
إختصار الروابط يتم عن طريق ال Ajax
المشكلة التي تظهر لدي
إذا لم يكن مسجل دخوله للموقع يعطيني خطأ أنه يجب عليه التسجيل
وإذا كنت مسجل دخول يظهر لي خطأ على ال console
POST
500 (Internal Server Error)
رجاءً أحتاج إلى حل لمشكلة ال middle ware وما المشكلة التي تظهر لي لم أعرف حلها وشكرا للجميع .
أعتزر عن الإطالة
التعليقات