Привет. Я хочу загружать некий файл (картинка, png) на сервер.
Форма отправки выглядит так:
<form method=post action="/en/upload/" enctype="multipart/form-data">
<tr>
	<input type=file name=file></td>
	<input class=b type=submit value="Upload"></td>
</form>
Формирую заголовок и загружаю. Если не указывать Content-type файла, то сервер ругается на неверный тип файла (логично). Если указать "Content-type: image/png", то сервер возвращает ошибку. Если указать любой другой тип файла, то сервер просто говорит, что тип неверный (как в первом случае). Что же делать, чтобы загрузить этот злосчастный PNG?
	QString boundary = "AaB03xGtroorl3984";
	QHttpRequestHeader header("POST", "/en/upload/", 1, 1);
	header.setValue("Host", "piccy.info");
	header.setValue("Content-type", "multipart/form-data; boundary=" + boundary);
	header.setValue("Cache-Control", "no-cache");
	header.setValue("Accept","*/*");
			
	QByteArray byt(openFilesPath.toUtf8());
	bytes.append("--" + boundary + "\r\n");
	bytes.append("content-disposition: ");
	bytes.append("form-data; name=\"file\"; filename=\"" + byt + "\"\r\n");
	//bytes.append("Content-type: image/png\r\n");
	bytes.append("Content-Transfer-Encoding: binary\r\n");
	bytes.append("\r\n");
	bytes.append(userfile->readAll());
	userfile->close(); // the file is opened earlier in the code
	bytes.append("\r\n");
	bytes.append("--" + boundary + "--");
	int contentLength = bytes.length();
	header.setContentLength(contentLength);
	http->setHost("piccy.info");
	bool httpRequestAborted = false;
	httpGetId = http->request(header, bytes);