Sobes.tech
Junior — Middle

როგორ შეიძლება დაამატოთ დამალული ველი მონაცემების გაგზავნისას REST API-ში?

sobes.tech AI

პასუხი AI-სგან

PHP-ში REST API-სთვის მონაცემების გაგზავნისას, შეგიძლიათ დაამატოთ დამალული ველი, რომელიც არ ჩანს მომხმარებლისთვის, მაგრამ გადაეცემა სერვერს.

თუ ეს HTML ფორმაა, შეგიძლიათ გამოიყენოთ <input type="hidden">:

<form method="POST" action="/api/endpoint">
  <input type="hidden" name="secretField" value="secretValue">
  <input type="text" name="username">
  <input type="submit" value="გაგზავნა">
</form>

თუ გაგზავნა PHP-ს საშუალებით cURL ან სხვა HTTP კლიენტის გამოყენებით ხდება, უბრალოდ დაამატეთ საჭირო ველი მონაცემთა მასივში:

$data = [
    'username' => 'user123',
    'secretField' => 'secretValue'
];

$options = [
    'http' => [
        'header'  => "Content-type: application/x-www-form-urlencoded\r\n",
        'method'  => 'POST',
        'content' => http_build_query($data),
    ],
];
$context  = stream_context_create($options);
$result = file_get_contents('https://example.com/api/endpoint', false, $context);

ამ გზით, დამალული ველი გადაეცემა სხვა მონაცემებთან ერთად, მაგრამ მომხმარებლისთვის აშკარად არ ჩანს.