powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Вопросы по форуму [закрыт для гостей] / Движок и API дедофорума. Обсуждение. Баги. Тестирование. Задачи.
25 сообщений из 1 023, страница 18 из 41
Движок и API дедофорума. Обсуждение. Баги. Тестирование. Задачи.  
    #1089971
Фотография Дед-Скарабей
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Текущая версия API: 1.3
Версия форума: 2.0.51
Дата выхода: 27.07.2025

Просьба писать вопросы и предложения по API в этой теме. Воспросы и предложения в других темах могут быть намотаны на писюлячку. Но и их постинг в этой теме не гарантирует, что предложения будут выполнены.

Ендпоинты:

https://nosql.ru/forum/api/get_forum_list.php
https://nosql.ru/forum/api/get_topic_list.php
https://nosql.ru/forum/api/get_post_list.php
https://nosql.ru/forum/api/get_post.php
https://nosql.ru/forum/api/get_user_data.php
https://nosql.ru/forum/api/get_topic_data.php
https://nosql.ru/forum/api/get_attachment.php
https://nosql.ru/forum/api/post_message.php
https://nosql.ru/forum/api/update_message.php
https://nosql.ru/forum/api/post_attachment.php
https://nosql.ru/forum/api/delete_posts.php
https://nosql.ru/forum/api/restore_posts.php

Валидный тоукен можно получить в профиле своего юзера. Гостевой постинг тоже возможен, но тоукен выдается только зареганным. В провиле появилась галка "Активировать API", при включении и сохранении будет сгенерен тоукен.

Базовый формат отправки такой:
Код: JSON
1.
2.
3.
4.
{
    "language": "ru",
    "api_token": "4285-5291-7113-3500-5919"
}
Примеры вызовов:

https://nosql.ru/forum/api/get_forum_list.php
Код: JSON
1.
2.
3.
4.
{
    "language": "ru",
    "api_token": "4285-5291-7113-3500-5919"
}
https://nosql.ru/forum/api/get_topic_list.php
Код: JSON
1.
2.
3.
4.
5.
6.
7.
8.
9.
{
    "language": "ru",
    "api_token": "4285-5291-7113-3500-5919",
    "forum_id": "8",
    "sort": "desc",
    "limit": 100, // no more than 100 allowed
    "subject": "Фотографии", // if specified only the topics with this name are returned
    "continue_at": "2023-01-01 00:00:00" // if omitted than before now
}
Параметр continue_at может быть использован для пошаговой подгрузки.

Параметр subject может быть использован для проверки, существует ли уже темы с таким названием.

https://nosql.ru/forum/api/get_post_list.php
Код: JSON
1.
2.
3.
4.
5.
6.
7.
8.
{
    "language": "ru",
    "api_token": "4285-5291-7113-3500-5919",
    "topic_id": 19529,
    "sort": "desc",
    "limit": 100, // no more than 100 allowed
    "continue_at": "2024-10-01 00:00:00" // if omitted than before now
}
Параметр continue_at может быть использован для пошаговой подгрузки.

https://nosql.ru/forum/api/get_post.php
Код: JSON
1.
2.
3.
4.
5.
{
    "language": "ru",
    "api_token": "1684-7912-7133-2657",
    "post_id": 1000
}
https://nosql.ru/forum/api/get_topic_data.php
Код: JSON
1.
2.
3.
4.
5.
{
    "language": "ru",
    "api_token": "1753-6212-0242-0888-3460",
    "topic_id": 566
}
https://nosql.ru/forum/api/get_user_data.php
Код: JSON
1.
2.
3.
4.
5.
{
    "language": "ru",
    "api_token": "1753-6212-0242-0888-3460",
    "user_id": 566
}
https://nosql.ru/forum/api/get_attachment.php
Код: JSON
1.
2.
3.
4.
5.
6.
{
    "language": "ru",
    "api_token": "4285-5291-7113-3500-5919",
    "attachment_id": 871959,
    "nr": 2
}
https://nosql.ru/forum/api/delete_posts.php
Код: JSON
1.
2.
3.
4.
5.
6.
7.
{
    "language": "ru",
    "api_token": "1753-6212-0242-0888-3460",
    "posts": [
        872084, 872085
    ]
}
https://nosql.ru/forum/api/restore_posts.php
Код: JSON
1.
2.
3.
4.
5.
6.
7.
{
    "language": "ru",
    "api_token": "1753-6212-0242-0888-3460",
    "posts": [
        872084, 872085
    ]
}
https://nosql.ru/forum/api/post_message.php
Код: JSON
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
{
    "language": "ru",
    "api_token": "4285-5291-7113-3500-5919",
    "forum_id": 8,
    "topic_id": 19546, // omit to create a new topic
    "is_thematic": 0,
    "is_adult": 0,
    "blog": 0,
    "no_guests": 0,
    "request_moderation": 0,
    "post_as_guest": "Карапуз", // omit to post under the user name
    "citated_posts": "",
    "subject": "Привет медвед", // not necessary if posting to an existing topic
    "message": "777"
}
В ответ приходит вся инфа о сделанном посте.

https://nosql.ru/forum/api/post_message.php - с аттачами
Код: JSON
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
{
    "language": "ru",
    "api_token": "4285-5291-7113-3500-5919",
    "forum_id": 8,
    "topic_id": 19546, // omit to create a new topic
    "is_thematic": 0,
    "is_adult": 0,
    "blog": 0,
    "no_guests": 0,
    "request_moderation": 0,
    "post_as_guest": "Карапуз", // omit to post under the user name
    "citated_posts": "",
    "subject": "Привет медвед", // not necessary if posting to an existing topic
    "message": "777",
    "attachments": [
        {
            "file_name": "photo_2024-09-01_18-14-34.jpg",
            "mime_type": "image/jpg",
            "base64_contents": "......"
        }
    ]
}
https://nosql.ru/forum/api/post_attachment.php - постфактумная отправка аттачмента

Аттачмент отправляется в бинарном формате, параметры в таком случае нужно передать GET запросом через переменные

https://nosql.ru/forum/api/post_attachment.php?api_token=1753-6212-0242-0888-3460&file_name=test.jpg&mime_type=image/jpeg&post_id=872072

Параметры:

api_token
file_name
mime_type
post_id

https://nosql.ru/forum/api/update_message.php
Код: JSON
1.
2.
3.
4.
5.
6.
7.
{
    "language": "ru",
    "api_token": "4285-5291-7113-3500-5919",
    "post_id": 8,
    "subject": "Привет медвед", // not necessary if changing of the subject is not necessary
    "message": "Новое сообщение"
}
В ответ приходит вся инфа о сделанном посте.

Ендпоинт поддерживает и замену и удаление аттачей. Чтобы удалить, нужно запостить апдейт без аттачей. И следовательно, если меняешь пост с аттачами, их нужно также указать при апдейте и препостить.

Ендпоинт поддерживает и замену названия топика. Но это работает только при апдейте первого поста темы.
...
Изменено: 27.07.2025, 13:23:50 - Дед-Скарабей
Рейтинг: 3 / 0
Движок и API дедофорума. Обсуждение. Баги. Тестирование. Задачи.
    #1364888
Гарыныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Дед-Скарабей  25.03.2025, 21:45:00
[игнорируется]
Проверил, chunked не выставляю в коде совсем. Только реагирую на запрос из браузера

HTTP_RANGE

header('HTTP/1.1 206 Partial Content');
header("Content-Length: $length");
header("Content-Range: bytes $start-$end/$filesize");
Код: PHP
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
100.
101.
102.
103.
104.
105.
106.
107.
108.
109.
110.
111.
112.
113.
114.
115.
116.
117.
118.
119.
120.
121.
122.
123.
124.
125.
126.
127.
128.
129.
130.
131.
132.
133.
134.
135.
136.
137.
138.
139.
140.
141.
142.
143.
144.
145.
146.
147.
    //---------------------------------------------------------------
    function send_attachment_and_exit(&$attachment_data)
    {
        if (empty($attachment_data["indicator"])) {
            if (!empty($attachment_data["path"]) && !file_exists($attachment_data["path"])) {
                header("HTTP/1.1 404 Not Found");
                echo_html("404 " . text("ErrAttachmentNotFound"));
                exit();
            }

            if (empty($attachment_data["path"]) || !empty($attachment_data["deleted"])) {
                header('HTTP/1.0 403 Forbidden');
                echo_html("403 " . text("ErrAttachmentDeleted"));
                exit();
            }

            if (!empty($attachment_data["no_access"])) {
                header('HTTP/1.0 403 Forbidden');
                echo_html("403 " . text("ErrAttachmentNoAccess"));
                exit();
            }
        }

        $HTTP_IF_NONE_MATCH = val_or_empty($_SERVER['HTTP_IF_NONE_MATCH']);

        $headers = apache_request_headers();

        foreach ($headers as $header => $value) {
            if (strcasecmp('If-None-Match', $header) == 0 && !empty($value)) {
                $HTTP_IF_NONE_MATCH = $value;
            }
        }

        $modified = filectime($attachment_data["path"]);
        $etag = System::generateHash(str_replace(APPLICATION_ROOT, "", $attachment_data["path"]) . "-" . $modified . "-" . val_or_empty($attachment_data["deleted"]), SALT_KEY);
        if ($HTTP_IF_NONE_MATCH == $etag) {
            header("HTTP/1.1 304 Not Modified");

            exit();
        }

        header("Cache-Control: no-cache");

        $filesize = sprintf("%u", filesize($attachment_data["path"]));

        $range = false;

        if (isset($_SERVER['HTTP_RANGE'])) {
            $range = $_SERVER['HTTP_RANGE'];
        } elseif ($apache = apache_request_headers()) {
            $headers = array();
            foreach ($apache as $header => $val) {
                $headers[strtolower($header)] = $val;
            }
            if (isset($headers['range'])) {
                $range = $headers['range'];
            }
        }

        $length = $filesize;
        $partial = false;
        if ($range) {
            $partial = true;
            list($param, $range) = explode('=', $range);

            // Bad request - range unit is not 'bytes'
            if (strtolower(trim($param)) != 'bytes') {
                header("HTTP/1.1 400 Invalid Request");
                exit;
            }

            // Get range values
            $range = explode(',', $range);
            $range = explode('-', $range[0]);

            // Deal with range values
            if ($range[0] === '') {
                $end = $filesize - 1;
                $start = $end - intval($range[0]);
                $length = $end - $start + 1;
            } elseif ($range[1] === '') {
                $start = intval($range[0]);
                $end = $filesize - 1;
                $length = $end - $start + 1;
            } else {
                // Both numbers present, return specific range
                $start = intval($range[0]);
                $end = intval($range[1]);
                if ($end >= $filesize || (!$start && (!$end || $end == ($filesize - 1)))) {
                    $partial = false; // Invalid range/whole file specified, return whole file
                    $length = $filesize;
                } else {
                    $length = $end - $start + 1;
                }
            }
        }

        if (!$partial) {
            header("Etag: $etag");
        }

        header('Accept-Ranges: bytes');

        if (preg_match("/image.+/", $attachment_data["type"])) {
            header("Content-type: " . $attachment_data["type"]);
            header("Content-Disposition: inline; filename=\"$attachment_data[name]\"");
        } elseif (preg_match("/.*(audio\\/mpeg|audio\\/ogg|video\\/mp4|video\\/webm|video\\/ogg).*/", $attachment_data["type"])) {
            header("Content-type: " . $attachment_data["type"]);
            header("Content-Disposition: inline; filename=\"$attachment_data[name]\"");
        } elseif (preg_match("/.*(application\\/pdf).*/", $attachment_data["type"])) {
            header("Content-type: " . $attachment_data["type"]);
            header("Content-Disposition: inline; filename=\"$attachment_data[name]\"");
        } else {
            header("Content-type: " . $attachment_data["type"]);
            header("Content-Disposition: attachment; filename=\"$attachment_data[name]\"");
        }

        if ($partial) {
            header('HTTP/1.1 206 Partial Content');
            header("Content-Length: $length");
            header("Content-Range: bytes $start-$end/$filesize");
            if (!$fp = fopen($attachment_data["path"], 'rb')) {
                header("HTTP/1.1 500 Internal Server Error");
                exit();
            }

            if ($start) {
                fseek($fp, $start);
            }

            while ($length) {
                set_time_limit(0);
                $read = ($length > 65536) ? 65536 : $length;
                $length -= $read;
                if ($read > 0) {
                    print(fread($fp, $read));
                }
            }

            fclose($fp);
        } else {
            header("Content-Length: $length");
            readfile($attachment_data["path"]);
        }

        exit();
    } // send_attachment_and_exit
красивое, мана
...
Рейтинг: 0 / 0
Движок и API дедофорума. Обсуждение. Баги. Тестирование. Задачи.
    #1364891
Фотография Дед-Скарабей
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Густавсберг  25.03.2025, 21:49:21
[игнорируется]
Блять как тут нахуй по сообщению понять, НА КАКОЕ оно отвечает?
Оказывается надо нажать на символ КАВЫЧЕК справа от деда-скарабея
чтобы перейти на пост, на который это является ответом.
Вот теперь ты понял! Рюхнул! Шаришь канистра!
...
Рейтинг: 0 / 0
Движок и API дедофорума. Обсуждение. Баги. Тестирование. Задачи.
    #1364892
Фотография Густавсберг
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Дед-Скарабей [игнорируется] 

строка 6 - HTTP/1.1
строка 12 - HTTP/1.0
строка 18 - HTTP/1.0

Дурка еббать!
...
Рейтинг: 0 / 0
Движок и API дедофорума. Обсуждение. Баги. Тестирование. Задачи.
    #1364893
Фотография Густавсберг
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Дед-Скарабей  25.03.2025, 21:53:02
[игнорируется]
Густавсберг  25.03.2025, 21:49:21
[игнорируется]
Блять как тут нахуй по сообщению понять, НА КАКОЕ оно отвечает?
Оказывается надо нажать на символ КАВЫЧЕК справа от деда-скарабея
чтобы перейти на пост, на который это является ответом.
Вот теперь ты понял! Рюхнул! Шаришь канистра!
НАРИСУЙ ДИЗАЙН ПОНЯТНЕЕ БЛЯТЬ
КНОПКАРИ ДОЛЖНЫ БЫТЬ БОЛЬШИЕ НА ПОЛЭКРАНА ДЛЯ ДАУНОВ ЕБАНЫХ
...
Изменено: 25.03.2025, 21:53:41 - Густавсберг
Рейтинг: 0 / 0
Движок и API дедофорума. Обсуждение. Баги. Тестирование. Задачи.
    #1364894
Фотография Дед-Скарабей
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Густавсберг  25.03.2025, 21:53:05
[игнорируется]
Дед-Скарабей [игнорируется] 

строка 6 - HTTP/1.1
строка 12 - HTTP/1.0
строка 18 - HTTP/1.0

Дурка еббать!
Это не ко мне.
...
Рейтинг: 0 / 0
Движок и API дедофорума. Обсуждение. Баги. Тестирование. Задачи.
    #1364895
Фотография Дед-Скарабей
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Густавсберг  25.03.2025, 21:53:28
[игнорируется]
Дед-Скарабей  25.03.2025, 21:53:02
[игнорируется]
Густавсберг  25.03.2025, 21:49:21
[игнорируется]
Блять как тут нахуй по сообщению понять, НА КАКОЕ оно отвечает?
Оказывается надо нажать на символ КАВЫЧЕК справа от деда-скарабея
чтобы перейти на пост, на который это является ответом.
Вот теперь ты понял! Рюхнул! Шаришь канистра!
НАРИСУЙ ДИЗАЙН ПОНЯТНЕЕ БЛЯТЬ
КНОПКАРИ ДОЛЖНЫ БЫТЬ БОЛЬШИЕ НА ПОЛЭКРАНА ДЛЯ ДАУНОВ ЕБАНЫХ
Попроси Владайку Слоновячку сделать пашэскин.
...
Рейтинг: 0 / 0
Движок и API дедофорума. Обсуждение. Баги. Тестирование. Задачи.
    #1364896
Фотография Густавсберг
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Короче блять.

API TODO 2025-03-25 v3

1. Перестать слать какие-то ебануто-форматированные выражения времени. Использовать UTC timestamp как во всём мире.
2. Навести порядок между булевыми полями - все должны быть true/false если оно булево, а не 1/0.
3. Починить срань вида "last_message_date": "6 мин." - поправить на UTC timestamp так же, пользователь сам вычтет из now и получит дальность в секундах. При этом кому-то может быть важно 40 сек назад или 10 сек. Кириллица запиханная в какой-либо формат времени - это двойной пидороёбизм.
4. Перестать срать в HTTP заголовках в API директивами Set-Cookie - куки в API вообще не нужны, потому что есть токен и потому что клиент API эти куки всё равно проигнорирует.
5. Разобраться почему в ответных HTTP заголовках нет Transfer-Encoding: chunked при том, что используются чанки или хуй знает что. А главное, понять куда проябывается Content-Length сцуко.
Как воспроизводить:
Код
1.
reset; curl --http1.1 -vv "https://nosql.ru/forum/view_profile.php?uid=1535"
...
Рейтинг: 0 / 0
Движок и API дедофорума. Обсуждение. Баги. Тестирование. Задачи.
    #1364897
defecator
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
[заблокирован: 30 мин.]
Густавсберг  25.03.2025, 21:55:24
[игнорируется]
Короче блять.

API TODO 2025-03-25 v3

1. Перестать слать какие-то ебануто-форматированные выражения времени. Использовать UTC timestamp как во всём мире.
2. Навести порядок между булевыми полями - все должны быть true/false если оно булево, а не 1/0.
3. Починить срань вида "last_message_date": "6 мин." - поправить на UTC timestamp так же, пользователь сам вычтет из now и получит дальность в секундах. При этом кому-то может быть важно 40 сек назад или 10 сек. Кириллица запиханная в какой-либо формат времени - это двойной пидороёбизм.
4. Перестать срать в HTTP заголовках в API директивами Set-Cookie - куки в API вообще не нужны, потому что есть токен и потому что клиент API эти куки всё равно проигнорирует.
5. Разобраться почему в ответных HTTP заголовках нет Transfer-Encoding: chunked при том, что используются чанки или хуй знает что. А главное, понять куда проябывается Content-Length сцуко.
Как воспроизводить:
Код
1.
reset; curl --http1.1 -vv "https://nosql.ru/forum/view_profile.php?uid=1535"
кстати, все пункты - законны
Пошэ натянул Дедулю на писю и провернул его два раза !
...
Рейтинг: 0 / 0
Движок и API дедофорума. Обсуждение. Баги. Тестирование. Задачи.
    #1364898
defecator
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
[заблокирован: 30 мин.]
Этот топик нужно переместить в вечные закрепы дедофорума !

Где там этот базя ёбаный, почему не шевелится, сука ?
...
Изменено: 25.03.2025, 22:00:04 - defecator
Рейтинг: 0 / 0
Движок и API дедофорума. Обсуждение. Баги. Тестирование. Задачи.
    #1364912
Фотография Густавсберг
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
defecator  25.03.2025, 21:59:16
[игнорируется]
Этот топик нужно переместить в вечные закрепы дедофорума !

Где там этот базя ёбаный, почему не шевелится, сука ?
basename закрепить сверхважный топик, быстро
...
Рейтинг: 0 / 0
Движок и API дедофорума. Обсуждение. Баги. Тестирование. Задачи.
    #1364914
Фотография Густавсберг
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Топик переименовать:

API дедофорума. Обсуждение. Баги. Тестирование. Задачи.
...
Изменено: 25.03.2025, 22:19:40 - Густавсберг
Рейтинг: 0 / 0
Движок и API дедофорума. Обсуждение. Баги. Тестирование. Задачи.
    #1364938
Redd
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Участковый [игнорируется] 

Рефакторинг пт?😅
...
Рейтинг: 0 / 0
Движок и API дедофорума. Обсуждение. Баги. Тестирование. Задачи.
    #1364942
Фотография Дед-Скарабей
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Участковый [игнорируется] 

Я тип HTTP не выставляю вообще.
...
Рейтинг: 0 / 0
Движок и API дедофорума. Обсуждение. Баги. Тестирование. Задачи.
    #1364962
Фотография Густавсберг
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Дед-Скарабей  25.03.2025, 22:48:24
[игнорируется]
Участковый [игнорируется] 

Я тип HTTP не выставляю вообще.
Не в этом суть срача. Это уже базесервер ебанутый и не суть важно. Это мелкая какашка на куче навоза уже.
...
Рейтинг: 0 / 0
Движок и API дедофорума. Обсуждение. Баги. Тестирование. Задачи.
    #1364964
Фотография Густавсберг
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Участковый  25.03.2025, 22:29:47
[игнорируется]
Густавсберг  25.03.2025, 21:53:05
[игнорируется]
Дед-Скарабей [игнорируется] 

строка 6 - HTTP/1.1
строка 12 - HTTP/1.0
строка 18 - HTTP/1.0

Дурка еббать!
Это че такое и откуда взялось?
pasted_image.png
Научись печатать реальные заголовки http/1.1 используя http/1.1, а не перепечатанные курлом http2 поля
...
Изменено: 25.03.2025, 23:26:47 - Густавсберг
Рейтинг: 0 / 0
Движок и API дедофорума. Обсуждение. Баги. Тестирование. Задачи.
    #1364995
basename
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Густавсберг  25.03.2025, 23:26:18
[игнорируется]
Участковый  25.03.2025, 22:29:47
[игнорируется]
Густавсберг  25.03.2025, 21:53:05
[игнорируется]
Дед-Скарабей [игнорируется] 

строка 6 - HTTP/1.1
строка 12 - HTTP/1.0
строка 18 - HTTP/1.0

Дурка еббать!
Это че такое и откуда взялось?
pasted_image.png
Научись печатать реальные заголовки http/1.1 используя http/1.1, а не перепечатанные курлом http2 поля
Я ничего не понял, поясни. что значит перепечатанные?

Откуда берётся то 1.1, то 1.0

Вот инфа из браузера, везед h2
pasted_image.png
...
Рейтинг: 0 / 0
Движок и API дедофорума. Обсуждение. Баги. Тестирование. Задачи.
    #1365007
Фотография Густавсберг
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
basename  26.03.2025, 00:52:33
[игнорируется]
Густавсберг  25.03.2025, 23:26:18
[игнорируется]
Участковый  25.03.2025, 22:29:47
[игнорируется]
Густавсберг  25.03.2025, 21:53:05
[игнорируется]
Дед-Скарабей [игнорируется] 

строка 6 - HTTP/1.1
строка 12 - HTTP/1.0
строка 18 - HTTP/1.0

Дурка еббать!
Это че такое и откуда взялось?
pasted_image.png
Научись печатать реальные заголовки http/1.1 используя http/1.1, а не перепечатанные курлом http2 поля
Я ничего не понял, поясни. что значит перепечатанные?

Откуда берётся то 1.1, то 1.0

Вот инфа из браузера, везед h2
pasted_image.png
Мы говорим о походе по http/1.1.
...
Рейтинг: 0 / 0
Движок и API дедофорума. Обсуждение. Баги. Тестирование. Задачи.
    #1365057
WWW
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
All You Need Is Love
Густавсберг  25.03.2025, 21:55:24
[игнорируется]
Короче блять.

API TODO 2025-03-25 v3

1. Перестать слать какие-то ебануто-форматированные выражения времени. Использовать UTC timestamp как во всём мире.
2. Навести порядок между булевыми полями - все должны быть true/false если оно булево, а не 1/0.
3. Починить срань вида "last_message_date": "6 мин." - поправить на UTC timestamp так же, пользователь сам вычтет из now и получит дальность в секундах. При этом кому-то может быть важно 40 сек назад или 10 сек. Кириллица запиханная в какой-либо формат времени - это двойной пидороёбизм.
4. Перестать срать в HTTP заголовках в API директивами Set-Cookie - куки в API вообще не нужны, потому что есть токен и потому что клиент API эти куки всё равно проигнорирует.
5. Разобраться почему в ответных HTTP заголовках нет Transfer-Encoding: chunked при том, что используются чанки или хуй знает что. А главное, понять куда проябывается Content-Length сцуко.
Как воспроизводить:
Код
1.
reset; curl --http1.1 -vv "https://nosql.ru/forum/view_profile.php?uid=1535"
ну и чисто подушнилову:
вместо такого
Код: SQL
1.
https://nosql.ru/forum/view_profile.php?uid=1535
стоит так
Код: SQL
1.
https://nosql.ru/api/v1/forum/profiles/{id}
...
Изменено: 26.03.2025, 08:14:01 - WWW
Рейтинг: 0 / 0
Движок и API дедофорума. Обсуждение. Баги. Тестирование. Задачи.
    #1365106
WWW
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
All You Need Is Love
Участковый  26.03.2025, 09:05:57
[игнорируется]
Хз че это. Пашэ до дедоапи доипался.
не доибался, а учит как правильно
лучше один раз спросить и выглядеть пидором тупым, чем ни разу не спросить и навсегда остаться пидором тупым
...
Рейтинг: 0 / 0
Движок и API дедофорума. Обсуждение. Баги. Тестирование. Задачи.
    #1365201
WWW
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
All You Need Is Love
WWW  26.03.2025, 08:11:23
[игнорируется]
Густавсберг  25.03.2025, 21:55:24
[игнорируется]
Короче блять.

API TODO 2025-03-25 v3

1. Перестать слать какие-то ебануто-форматированные выражения времени. Использовать UTC timestamp как во всём мире.
2. Навести порядок между булевыми полями - все должны быть true/false если оно булево, а не 1/0.
3. Починить срань вида "last_message_date": "6 мин." - поправить на UTC timestamp так же, пользователь сам вычтет из now и получит дальность в секундах. При этом кому-то может быть важно 40 сек назад или 10 сек. Кириллица запиханная в какой-либо формат времени - это двойной пидороёбизм.
4. Перестать срать в HTTP заголовках в API директивами Set-Cookie - куки в API вообще не нужны, потому что есть токен и потому что клиент API эти куки всё равно проигнорирует.
5. Разобраться почему в ответных HTTP заголовках нет Transfer-Encoding: chunked при том, что используются чанки или хуй знает что. А главное, понять куда проябывается Content-Length сцуко.
Как воспроизводить:
Код
1.
reset; curl --http1.1 -vv "https://nosql.ru/forum/view_profile.php?uid=1535"
ну и чисто подушнилову:
вместо такого
Код: SQL
1.
https://nosql.ru/forum/view_profile.php?uid=1535
стоит так
Код: SQL
1.
https://nosql.ru/api/v1/forum/profiles/{id}
продолжая душнить - для всяких POST/PUT еще и ключ идемпотентности не мешало. чтобы всякие дубли при обрывах не хуячить. но это уже сильно душно, не для такого детского случая
...
Рейтинг: 0 / 0
Движок и API дедофорума. Обсуждение. Баги. Тестирование. Задачи.
    #1365492
WWW
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
All You Need Is Love
и еще душного
вот в связке с апи nginx незаменим. но, это больше для участкового
...
Рейтинг: 0 / 0
Движок и API дедофорума. Обсуждение. Баги. Тестирование. Задачи.
    #1366806
WWW
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
All You Need Is Love
дед приуныл
ему по щекам надавали
...
Рейтинг: 0 / 0
Движок и API дедофорума. Обсуждение. Баги. Тестирование. Задачи.
    #1366877
Фотография Дед-Скарабей
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Принял сведению.

Еше ранее сказал.

Исправлю. Некоторое.
...
Рейтинг: 0 / 0
Движок и API дедофорума. Обсуждение. Баги. Тестирование. Задачи.
    #1366880
Фотография Дед-Скарабей
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код идемротентности круто но тут не нужно.

При постинге на дубликаты уже проверяется по хэшу поста.
...
Рейтинг: 0 / 0
Движок и API дедофорума. Обсуждение. Баги. Тестирование. Задачи.
    #1366904
WWW
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
All You Need Is Love
Дед-Скарабей  27.03.2025, 12:54:08
[игнорируется]
Исправлю. Некоторое.
все исправляй
...
Рейтинг: 0 / 0
25 сообщений из 1 023, страница 18 из 41
Форумы / Вопросы по форуму [закрыт для гостей] / Движок и API дедофорума. Обсуждение. Баги. Тестирование. Задачи.
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]