Russian Qt Forum
Ноябрь 23, 2024, 08:39 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: Qt Quick и HTTP.  (Прочитано 4711 раз)
ksk-
Самовар
**
Offline Offline

Сообщений: 178



Просмотр профиля
« : Октябрь 28, 2012, 06:46 »

Всем привет. Проблема такая: с помощью XMLHttpRequest отправляю запрос на сервер, запрос выполняется успешно, после нескольких (двух) редиректов получаю нужную мне страницу. НО мне нужно не столько содержимое страницы, сколько ее окончательный URL.

Код
Javascript
function request() {
  var req = new XMLHttpRequest();
 
  req.onreadystatechange = function() {
              if (req.readyState === 4) {
                  console.log(req.getResponseHeader("Location"));
                  console.log(req.responseText)
          }
 
  req.open("GET", "http://*************", true);
  req.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
  req.send(null);

Вышеприведенный фрагмент кода выводит Location первого редиректа (а мне нужен последний) и содержимое последней страницы.

Теперь вопросы:
    1. Почему не выводит Location последнего редиректа?
    2. Как мне все-таки c помощью JavaScript получить реальный URL загруженной страницы?
    3. Может быть я зря затеял из JS работать с HTTP, вместо старого доброго QNetworkAccessManager?
    4. Для чего вообще нужен этот Qt Quick, если с ним и помимо этой целая куча проблем?
Записан
Bepec
Гость
« Ответ #1 : Октябрь 28, 2012, 11:33 »

Qt Quick — новый перспективный инструмент Qt 4.7, позволяющий проектировать UI приложения на простом javascript-подобном декларативном языке (QML), используя все возможности Qt Animation Framework и даже больше. Благодаря Qt Quick, создание UI и кода становятся полностью независимыми этапами разработки. Qt Quick открывает новые возможности при портировании и кастомизации приложений, сокращает сроки разработки и выводит UI на качественно новый уровень.

PS нигде не говорится, что ТОЛЬКО им можно всё сделать Улыбающийся
Записан
ksk-
Самовар
**
Offline Offline

Сообщений: 178



Просмотр профиля
« Ответ #2 : Октябрь 28, 2012, 17:34 »

Qt Quick — новый перспективный инструмент Qt 4.7, позволяющий проектировать UI приложения на простом javascript-подобном декларативном языке (QML), используя все возможности Qt Animation Framework и даже больше. Благодаря Qt Quick, создание UI и кода становятся полностью независимыми этапами разработки. Qt Quick открывает новые возможности при портировании и кастомизации приложений, сокращает сроки разработки и выводит UI на качественно новый уровень.

PS нигде не говорится, что ТОЛЬКО им можно всё сделать Улыбающийся

Ну просто я где-то слышал, что начиная с Qt5, Qt Quick будет основой Qt, вся C++ - шная часть будет использоваться для написания критических частей приложения. Вот и разработчики KDE говорят, что переписывают свою "Plasma" на QML постепенно. Вот и я решил не отставать от технического прогресса, и тоже решил переписать некоторые свои поделки на  QML. Все вроде удалось, осталось только с записью/чтением файлов на HDD разобраться и вот, с HTTP. Но про файлы говорят, что JS не умеет их читать и записывать. Тут точно придется на C++ делать. А вот с HTTP наблюдается описанная выше проблема. Все-таки, как Вы считаете, стоит ли продолжать бороться с JS? Или плюнуть на всё и писать на С++?
« Последнее редактирование: Октябрь 28, 2012, 17:36 от ksk- » Записан
Igors
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 11445


Просмотр профиля
« Ответ #3 : Октябрь 28, 2012, 18:42 »

стоит ли продолжать бороться с JS? Или плюнуть на всё и писать на С++?
Ну Вы сами понимаете что это личный выбор каждого. По мне - так плюнуть и растереть. Изучение нового - палка о двух концах. Да, эрудиция - это неплохо, но есть опасность "увлечься процессом познания", и страдает задача, результат.
Записан
Bepec
Гость
« Ответ #4 : Октябрь 28, 2012, 19:10 »

Помоему JavaScript  и апи низкого уровня как то - запись на диск, обращение к устройствам и прочее, это излишество.

Лучше и быстрее С++ JS это не сделает, потому на нём остаётся только интерфейс и красивости. Улыбающийся
Записан
ksk-
Самовар
**
Offline Offline

Сообщений: 178



Просмотр профиля
« Ответ #5 : Октябрь 29, 2012, 01:11 »

Таким образом, выходит, что мне лишь нужно сделать UI на QML и какими-нибудь хитрыми способами прикрутить с нему уже готовую логику, написанную ранее на C++. Так я пожалуй и сделаю. ))
Записан
Bepec
Гость
« Ответ #6 : Октябрь 29, 2012, 06:55 »

А зачем хитрыми способами? Там жеж вроде даже сигналы передаются в С++ и QML.

PS некоторые пропагандируют связку QML и QtScript, правда я в этой связке решительно ничего не понимаю.
Записан
ksk-
Самовар
**
Offline Offline

Сообщений: 178



Просмотр профиля
« Ответ #7 : Октябрь 29, 2012, 17:45 »

А зачем хитрыми способами? Там жеж вроде даже сигналы передаются в С++ и QML.

Это верно, но все равно придется немного подумать. )
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.139 секунд. Запросов: 22.