crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

2 страниц V  < 1 2  
Ответить в данную темуНачать новую тему
> Залить jpg картинку, на одноклассники
Verus
  опции профиля:
сообщение 4.4.2009, 14:53
Сообщение #11


Новичок


Группа: Новичок
Сообщений: 8
Регистрация: 1.4.2009
Пользователь №: 656

Спасибо сказали: 0 раз(а)




Репутация:   0  


А может у кого-то есть опыт заливания картинок на сервер с помощью Qhttp? Показали бы, было бы здорово :)
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
kwisp
  опции профиля:
сообщение 4.4.2009, 17:28
Сообщение #12


астарожна ынтжинэр
*****

Группа: Участник
Сообщений: 1404
Регистрация: 26.11.2008
Из: ТаганрогРодинаЧехова
Пользователь №: 435

Спасибо сказали: 113 раз(а)




Репутация:   23  


Verus,
опыта нет, но думаю засовывать картинку в QByteArray и отправлять на сервер там загружать картинку из того же QByteArray.
в чем конкретно проблема не понятно.

Сообщение отредактировал kwisp - 4.4.2009, 17:28
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Verus
  опции профиля:
сообщение 4.4.2009, 18:44
Сообщение #13


Новичок


Группа: Новичок
Сообщений: 8
Регистрация: 1.4.2009
Пользователь №: 656

Спасибо сказали: 0 раз(а)




Репутация:   0  


Может я конечно криворукий, но просто я не могу понять что я делаю не так :( Попробуй загрузить картинку каким-нибудь способом(только с Qt) на одноклассники, если получится, поделись :)
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
LE0N
  опции профиля:
сообщение 4.4.2009, 22:44
Сообщение #14


Студент
*

Группа: Участник
Сообщений: 97
Регистрация: 10.3.2009
Из: Беларусь
Пользователь №: 604

Спасибо сказали: 0 раз(а)




Репутация:   0  


Сомневаюсь я, что это скрипты одноклассников возвращают такой заголовок.
Скорее всего самому веб-серверу не нравится то, что ты передаёшь...
Читай про ХТТП заголовки спецуху...
ЗЫ. Возможно это какая-нибудь хитрожопая защита одноклассников от роботов...И бэд реквест выдаёт именно бизнес логика этой соц. сети...

Сообщение отредактировал LE0N - 4.4.2009, 22:48
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
kwisp
  опции профиля:
сообщение 4.4.2009, 23:29
Сообщение #15


астарожна ынтжинэр
*****

Группа: Участник
Сообщений: 1404
Регистрация: 26.11.2008
Из: ТаганрогРодинаЧехова
Пользователь №: 435

Спасибо сказали: 113 раз(а)




Репутация:   23  


Verus,
польщен предложением но есть чем заняться и без этого... это как я понимаю не пятиминутное дело если честно не предполагал что сервер вообще не твой:)
тут правда Qt не причем протокол все решает ....

можно просмотреть что и как посылается с помощью программ снифферов я пользуюсь ethereal хорошая вещь... посмотришь как картинку посылает браузер состряпаешь такой же запрос серверу должно сработать....
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
ViGOur
  опции профиля:
сообщение 4.4.2009, 23:53
Сообщение #16


Мастер
******

Группа: Модератор
Сообщений: 3296
Регистрация: 9.10.2007
Из: Москва
Пользователь №: 4

Спасибо сказали: 231 раз(а)




Репутация:   40  


Я думаю, что для начала стоит попробовать залить картинку на свой сервер, на котором поставить полный доступ на заливку, и когда уже это получится пробовать это сделать на чужой.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Verus
  опции профиля:
сообщение 16.4.2009, 12:58
Сообщение #17


Новичок


Группа: Новичок
Сообщений: 8
Регистрация: 1.4.2009
Пользователь №: 656

Спасибо сказали: 0 раз(а)




Репутация:   0  


Вот недавно заливал картинку на антикапчу. Все успешно заливается таким способом:
QHttpRequestHeader Network::GetFileHeader(const QString& fileName)
{
    QFile file(fileName);
    file.open(QFile::ReadOnly);
    QByteArray boundary = "-------------fjfhee78y34uhui";
    QHttpRequestHeader header("POST", "/in.php");
    _bytesToSend = "--"+boundary+"\r\n"+
    "Content-Disposition: form-data; name=\"method\"\r\n\r\npost\r\n"+
    "--"+boundary+"\r\nContent-Disposition: form-data; name=\"key\"\r\n\r\n"+_ackey.toUtf8()+"\r\n"+
    "--"+boundary+"\r\nContent-Disposition: form-data; name=\"file\"; filename=\""+fileName.toUtf8()+"\"\r\n"+
    "Content-Type: image/pjpeg\r\n\r\n"+file.readAll()+"\r\n--"+boundary+"--";

    header.setContentLength(_bytesToSend.size());
    header.setValue("Host", "ac-service.info");
    header.setValue("User-Agent",
        "Mozilla/5.0 (Windows; U; Windows NT 6.1; ru; rv:1.9.0.8) Gecko/2009032609 Firefox/3.0.8");
    header.setContentType("multipart/form-data; boundary="+boundary);
    setHost("ac-service.info", QHttp::ConnectionModeHttp);
    return header;
}

Одноклассники же упорно сопротивляются. Так же выяснил с помощью firebug'a что если через браузер заливать картинку то ответ от сервера тоже 400(Bad Request), но перед этим в заголовке в поле Location: указывается страница, которую браузер потом открывает GET'ом для добавления комента к фотке. Средствами Qt в заголовке такого пункта нет, т.е. получаю просто 400 и все тут.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

2 страниц V  < 1 2
Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 28.11.2021, 14:37