Pull to refresh

Comments 15

Класс Qhttp отсутствует в Qt 4.7.x, так что на всежей версии qt не соберется :( Надо было ам сразу использовать QNetworkAccessmanager.
И ещё в репозиторий авшекй ссылке не пустили («Error
You do not have access to this repository. „), так что затестить не удалось :(
Забыл убрать «Private repository», теперь должно работать.
Спасибо!
А еще было бы красивее использовать addQueryItem
Я в C++ полный ноль, но некоторые части кода из статьи мне кажутся странными…
Например QRegExp regexp("\"mid\":([^,]+),\"secret\":\"([^,]+)\",\"sid\":\"([^,]+)\""); — это-ж вы JSON парсите регуляркой… Наверняка же есть стандартные JSON парсеры…

m_pTcpSocket->write(QString("GET " + m_pSrcUrl->path() + "\r\n").toAscii());
Тут зачем-то для HTTP запроса используете голые сокеты, хотя выше использовали специальную HTTP библиотеку…

А по поводу Vkontakte API — для меня было очень печальным сюрпризом то, что API Session ID привязан к IP адресу. Так что при смене IP приходится заново авторизовываться… Причем текст ошибки, которую при этом выводит вконтакте — «Unknown method passed». И кто такое придумал…
Проще всего взять QtScript и через него eval'нуть ответ и потом его разобрать, ну или взять на выбор любую разбиралку json'а
UFO landed and left these words here
Парсить, всего то, одну малнькую строку- подключать библиотеки не хотел. Хотя это, было бы, правильнее.
С сокетами, действительно, что то я загнул. Можно, было бы, и QHttp, а еще лучше- QNetworkAccessmanager (как писали выше).

Вечером попробую исправить :)
Исправил и залил. Сокеты больше не используются как и устаревший QHttp.
UFO landed and left these words here
Sign up to leave a comment.

Articles