NOVINKA: Pracuj až o 60 % rychleji díky akreditovanému kurzu Specialista na AI. Nyní již od 0 Kč. Zjisti více:
Avatar
Lu Kiss
Člen
Avatar
Lu Kiss:6.11.2017 15:42

Ahoj, píšu si nějaké api, ale nenašel jsem žádný ucelený tutoriál, většina z nich asi předpokládá nějaké předešlé znalosti.
Proto se tedy ptám, zda tu je někdo, kdo api píše a okomentoval mi můj kód. V případě zájmu se můžeme kontaktovat ohledně nějakých soukromých konzulaací, klidně i za FO. Předem děkuji :).
odkaz na pastebin

<?php
header("Access-Control-Allow-Origin: *");
header("Access-Control-Allow-Headers: access");
header("Access-Control-Allow-Methods: GET");
header("Access-Control-Allow-Credentials: true");
header('Content-Type: application/json');
header('Cache-Control: no-cache');
header("Authorization: Basic " . base64_encode('username:password')); // je tohle vubec treba?

        require '../../myautoload.php';
        require '../../vendor/autoload.php';

        use app\manager;
        use app\model;

        if(isset($_SERVER['PHP_AUTH_USER']) && isset($_SERVER['PHP_AUTH_PW'])) { //nemělo by se to spíš brát z hlavičky Authorizaion?
                $auth = new model\Model_Authenticator();
                $db = $auth->verifyAndReturnDatabase($_SERVER['PHP_AUTH_USER'], $_SERVER["PHP_AUTH_PW"]); // neměl bych nějak trimovat tyhle hodnoty
                if($db) {
                        $devices = new manager\Manager_Devices($db);
                        $devices->load();
                        if($_GET["id"] ?? null && is_int($_GET["id"])) {
                                print_r(json_encode($devices->get($_GET["id"])));
                        }
                        else {
                                print_r(json_encode($devices->table()));
                        }
                        header('HTTP/1.0 200 OK');
                        exit;
                }
                else {
                        header('WWW-Authenticate: Basic realm="My Realm"');
                header('HTTP/1.0 401 Unauthorized');
                exit;
                }

        }
        else {
                header('WWW-Authenticate: Basic realm="My Realm"');
            header('HTTP/1.0 401 Unauthorized');
            exit;
        }
 
Odpovědět
6.11.2017 15:42
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 1 zpráv z 1.