လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> ThinkPhp6 တွင်ထိရောက်သောဒေတာဘေ့စ်စုံစမ်းမှုသို့လမ်းညွှန်ရန်လမ်းညွှန်

ThinkPhp6 တွင်ထိရောက်သောဒေတာဘေ့စ်စုံစမ်းမှုသို့လမ်းညွှန်ရန်လမ်းညွှန်

gitbox 2025-07-28

မိတ်ဆက်ပေး

Graphql သည်အားကောင်းသော API query language နှင့်ဖောက်သည်များအားလိုအပ်သောအချက်အလက်များကိုတိကျစွာတောင်းဆိုရန်ခွင့်ပြုသည့် Runtime အမျိုးအစားစနစ်ဖြစ်သည်။ ဤဆောင်းပါးတွင် ThinkPpP6 မူဘောင်တွင် crospql ကို အသုံးပြု. ဒေတာဘေ့စ်မေးမြန်းမှုကိုလုပ်ဆောင်နိုင်စွမ်းကိုမည်သို့အကောင်အထည်ဖော်မည်ကိုအသေးစိတ်မိတ်ဆက်ပေးပါမည်။

Graphql အစိတ်အပိုင်းများကို install လုပ်ပါ

တေးရေးဆရာကို သုံး. install လုပ်ပါ

သင်မစတင်မီ chosser မှတဆင့် graphql နှင့်သက်ဆိုင်သောအစိတ်အပိုင်းများကို install လုပ်ရန်လိုအပ်သည်။

 <span class="fun">တေးရေးဆရာသည် overlog / graphql-bundle လိုအပ်သည်</span>

graphql အစိတ်အပိုင်းများကို configuring

တပ်ဆင်မှုပြီးဆုံးသွားသောအခါ config directory ရှိ graigl.php ဖိုင်ကိုဖန်တီးပါ။

 return [
    'default_schema' => 'default',
    'schemas' => [
        'default' => [
            'query' => [
                'fields' => [
                    'hello' => [
                        'type' => 'String',
                        'resolve' => function () {
                            return 'Hello, GraphQL!';
                        }
                    ]
                ]
            ]
        ]
    ]
];

အထက်ပါပြင်ဆင်မှုသည် hello quere query field တစ်ခုဖြစ်ပြီးသတ်မှတ်ထားသော string ကိုပြန်ပို့သည်။

Graphql Controller ကိုဖန်တီးပါ

ထို့နောက် Client's Graphql query query request ကိုလက်ခံရရှိရန်အက်ပလီကေးရှင်း / Controller လမ်းညွှန်တွင် groubql.php controller တစ်ခုကိုဖန်တီးပါ။

 namespace app\controller;

use Overblog\GraphQLBundle\Definition\Resolver\ResolverInterface;
use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\HttpFoundation\Response;

class GraphQL
{
    public function index(Request $request, ResolverInterface $resolver)
    {
        $query = $request->request->get('query');
        $variables = $request->request->get('variables');
        $result = $resolver->resolve($query, $variables);
        return new Response(json_encode($result));
    }
}

Controller သည် cherfql ၏မေးမြန်းမှုမှ chatql မေးမြန်းမှုကိုရရှိသည်။ ခွဲခြမ်းစိတ်ဖြာခြင်းအတွက် resolver ဟုခေါ်သည်။

routing configure

client တောင်းဆိုမှုများအတွက် graphql interface ကိုမှန်ကန်စွာဝင်ရောက်ရန် Routing configuration ကို config / routes.php တွင် routing configuration ကိုထည့်ရန်လိုအပ်သည်။

 use think\facade\Route;

Route::rule('graphql', 'controller/GraphQL/index');

ဤ configuration သည် / grospql controller ၏အညွှန်းကိန်းနည်းလမ်းကိုအတွက် / conflql လမ်းကြောင်းသို့တောင်းဆိုသည်။

test conflql query ကိုစမ်းသပ်ပါ

အထက်ပါအဆင့်များကိုပြီးစီးပြီးနောက်သင်၏ browser ကိုသင်၏ browser မှတဆင့် http: // localhost / gropql ကို ရယူနိုင်သည်။ query editor input တွင်:

 {
    hello
}

စုံစမ်းမှုကိုအကောင်အထည်ဖော်ပြီးနောက်ပြန်လည်ရရှိခြင်းသည် -

 {
    "data": {
        "hello": "Hello, GraphQL!"
    }
}

ThinkPpP6 တွင် graphql ၏အခြေခံပေါင်းစည်းမှုသည်အောင်မြင်ခဲ့ကြောင်းဖော်ပြသည်။

နိဂုံးချုပ်အားဖြင့်

ဤဆောင်းပါးသည် conflesspp6 မူဘောင်တွင် conflessPP6 မူဘောင်တွင် conflipp6 မူဘောင်တွင်မည်သို့ပေါင်းစည်းရမည်ကိုအသေးစိတ်ဖော်ပြထားသည်။ အခြေခံဂရစ်စုံစမ်းရေးဥပမာကိုအစိတ်အပိုင်းတပ်ဆင်ခြင်း, configuration, controller ရေးသားခြင်းနှင့်လမ်းကြောင်းချိန်ညှိချက်များမှတစ်ဆင့်ပြီးစီးခဲ့သည်။ Graphql သည် 0 န်ဆောင်မှုခံယူသူမှလိုအပ်သောအချက်အလက်များကိုတိကျစွာပြန်ပို့ပေးပြီး API ၏စွမ်းဆောင်ရည်နှင့်အချည်းနှီးနိုင်မှုကိုတိုးတက်စေသည်။ ThinkPpP6 နှင့် Graphql ပေါင်းစပ်မှုဖြင့်စတင်ရန်ဤဆောင်းပါးသည် developer များကိုလျင်မြန်စွာစတင်ရန်ကူညီနိုင်သည်ဟုကျွန်ုပ်မျှော်လင့်ပါသည်။

မကြာသေးမီ ဆောင်းပါးများ