Форум программистов, компьютерный форум, киберфорум
PHP: сети
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/3: Рейтинг темы: голосов - 3, средняя оценка - 4.67
3 / 3 / 11
Регистрация: 17.01.2013
Сообщений: 354

Добавить раздачу через WebUI в KTorrent

27.04.2016, 09:04. Показов 626. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем привет!

Мучаюсь с добавлением раздачи в KTorrent через WebUI.

Смотрю форму для отправки файла (см. вложения).
Вот её код:
HTML5
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
<form action="javascript:load_url(); update_torrents(); show_div('content');" method="get">
    <div class="item">
        URL:
        <div class="option">
            <input id="torrent_url" type="text" name="load_torrent" style="width : 240px;">
            <br><span>Example: http://ktorrent.org/down/latest.torrent</span>
    
            <div style="margin-top : 1em;">
                <input type="submit" value="Load Torrent">
            </div>
        </div>
    </div>
</form>
<form action="torrent/load?page=interface.html" method="post" enctype="multipart/form-data">
    <div class="item" style="min-height : 5em;">
        File path:
        <div class="option">
            <div style="display : inline;">
            <input type="file" name="load_torrent" style="width:240px;">
            </div>
    
            <div style="margin-top : 1em;">
            <input type="submit" name="Upload Torrent" value="Upload Torrent">
            </div>
        </div>
    </div>
</form>
Первый у меня не заработал даже через интерфейс WebUI, но второй вариант работает. Пробую...

Выполняю:
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<?php
 
$sid = 'KT_SESSID=70000333'; // предварительно получаю его в таком виде
$filename = '@/home/user/topic.torrent';
 
$ch = curl_init();
curl_setopt_array($ch, array(
    CURLOPT_URL => "http://192.168.112.1:8082/torrent/load?page=interface.html",
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_COOKIE => $sid,
    CURLOPT_POST => true,
        CURLOPT_HEADER => true,
    CURLOPT_POST => http_build_query(array('load_torrent' => $filename, 'Upload Torrent' => 'Upload Torrent'
))));
$json = curl_exec($ch);
curl_close($ch);
var_dump($json);
 
?>
Получаю ошибку:
string(304) "HTTP/1.1 500 Content-Length: 180 Content-Type: text/html Date: Wed, 27 Apr 2016 05:39:42 UTC Server: KTorrent/4.3.1
Internal Server Error
Произошла внутренняя ошибка сервера: Неподд�"
Мне вообще нужно отправить файл с сервера KTorrent'у, желательно через http.

В сети очень мало что нашел про KTorrent, никаких руководств к его API тоже.

Подскажите, чего я неправильно делаю ?

UPD: Вот такие actions есть ещё:
JavaScript
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
// do an action 
function do_action(cmd)
{
    fetch_xml("/action?" + cmd,action_ok,action_error);
}
 
function action_ok(xmldoc)
{
    if (xmldoc.getElementsByTagName("result")[0].data == "Failed")
        show_error("Error: action failed !");
}
 
function action_error(msg)
{
    show_error(msg);
}
 
function shutdown()
{
    fetch_xml("/action?shutdown=true",action_ok,action_error);
    window.location = "/login.html";
}
 
function load_url()
{
    var url = document.getElementById("torrent_url");
    fetch_xml("/action?load_torrent=" + escape(url.value),action_ok,action_error);
    url.value = "";
}
Миниатюры
Добавить раздачу через WebUI в KTorrent  
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
27.04.2016, 09:04
Ответы с готовыми решениями:

Сделать раздачу карт через массив
Здравствуйте. Помогите сделать раздачу карт для карточной игры &quot;21\Очко&quot;. Есть типизированная переменная, в ней: Масть Ранг...

Как наладить раздачу интернет через Wi-Fi ?
Имеется интерент Мегабит Сити(сеть) - с 1-м IP-шником, свитч, две антены Wi-Fi. На первом компьютере всегда есть интернет(на него он и...

Настройка интернета на раздачу wifi через второй роутер
у меня модем/роутер с вайфаем (technicolor TG588v простенький) от провайдера. как мне можно устроить раздачу wifi третим лицам через...

1
3 / 3 / 11
Регистрация: 17.01.2013
Сообщений: 354
27.04.2016, 09:31  [ТС]
О, получилось! Вот так работает:
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<?php
 
$sid = 'KT_SESSID=70000333'; // предварительно получаю его в таком виде
$filename = 'http://server/topic.torrent';
 
$ch = curl_init();
curl_setopt_array($ch, array(
    CURLOPT_URL => "http://192.168.112.1:8082/action?load_torrent=" . $filename,
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_COOKIE => $sid,
    CURLOPT_HEADER => true
))));
$json = curl_exec($ch);
curl_close($ch);
var_dump($json);
 
?>
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
27.04.2016, 09:31
Помогаю со студенческими работами здесь

При попытке создать раздачу 3G через wi-fi не видит модем, dlink 2650u
Пытаюсь создать раздачу с помощью wan вроде бы создает, но когда раздаю пишет ограничено, без доступа к сети; когда через click'n'connect...

Как сделать раздачу интернета через компьютер на роутер asus rt-n10u
Интернет на компьютере YOTA

Настроить раздачу инета от TMG Firefront через роутер в другую сеть
Подскажите пожалуйста как лучше настроить TMG - он есть и настроен в доменной сети. Мне необходимо сделать так, чтобы другая локалка через...

ktorrent-3.0.2
Установил ktorrent-3.0.2, а в нем модули пустые, и не отображается ни сколько участников, ни графики, ничего в общем. Можно как то...

Вышел KTorrent 4.0
24 мая вышла новая версия битторрент-клиента для KDE - KTorrent 4.0. В этом релизе реализованы несколько весьма любопытных функций,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru