تطوير الواجهة الخلفية 1 دقيقة للقراءة 957 مشاهدات

بناء واجهات GraphQL مع Laravel: دليل شامل

تعلّم كيفية بناء واجهات GraphQL قوية مع Laravel باستخدام Lighthouse PHP. من تصميم المخطط إلى الاشتراكات الفورية.

GraphQL API development

مقدّمة إلى GraphQL مع Laravel

يوفّر GraphQL بديلاً مرناً لواجهات REST. وباستخدام Laravel و Lighthouse PHP، يمكنك بناء واجهات برمجية قوية وآمنة الأنواع.

الخطوة 1: تثبيت Lighthouse

composer require nuwave/lighthouse
php artisan vendor:publish --tag=lighthouse-schema

الخطوة 2: تعريف المخطط

# graphql/schema.graphql
type Query {
    users: [User!]! @paginate
    user(id: ID! @eq): User @find
}

type User {
    id: ID!
    name: String!
    email: String!
    posts: [Post!]! @hasMany
}

type Post {
    id: ID!
    title: String!
    content: String!
    author: User! @belongsTo
}

الخطوة 3: التعديلات (Mutations)

type Mutation {
    createUser(input: CreateUserInput! @spread): User! @create
    updateUser(id: ID!, input: UpdateUserInput! @spread): User! @update
    deleteUser(id: ID!): User! @delete
}

input CreateUserInput {
    name: String!
    email: String!
    password: String! @hash
}

الخطوة 4: المُحلّلات المخصّصة (Custom Resolvers)

// app/GraphQL/Queries/UserQuery.php
class UserQuery
{
    public function active($root, array $args)
    {
        return User::where('is_active', true)->get();
    }
}

الخطوة 5: الاشتراكات (Subscriptions)

type Subscription {
    postCreated: Post!
}

// Broadcasting the event
event(new PostCreated($post));

يوفّر GraphQL مع Laravel طبقة واجهة برمجية قوية ومرنة للتطبيقات الحديثة.

الوسوم
مشاركة هذه المقالة:
ES
كتبه

Edrees Salih

مهندس برمجيات متكامل يتمتع بخبرة 9 سنوات. شغوف ببناء حلول قابلة للتطوير ومشاركة المعرفة مع مجتمع المطورين.

عرض الملف الشخصي

التعليقات (0)

اترك تعليقًا

لن يتم نشر بريدك الإلكتروني.

لا توجد تعليقات بعد. كن أول من يشارك أفكاره!

مقالات ذات صلة

مقالات ذات صلة

هل تحتاج مساعدة في مشروعك؟

احجز استشارة مجانية لمدة 30 دقيقة لمناقشة تحدياتك التقنية واستكشاف الحلول معًا.