Загрузить файл на сервер через RTMP + Java
Мне нужно загрузить файл на сервер через гибкий графический интерфейс, который отправляет файл на сервер по протоколу rtmps.
Я пытался отправить на сервер только FileReference и запрос был выполнен, но на стороне сервера я получил только пустую ObjectMap. Я знаю, что могу использовать URLRequest, но мне нужен именно запрос rtmps.
Мой код Flex:
public function uploadFile(file:FileReference):void{
NetConnection nc = new NetConnection();
nc.client = this;
nc.proxyType = "best";
nc.connect(connectionURL, "3.0", "userName", "password");
nc.call("uploadFile", null, file);
}
Мой код Java:
public void uploadFile(Object param) { // <-- param is empty ObjectMap
log.info("Upload file.");
// save file on server
}
Может кто-нибудь мне помочь?
1 ответ
Решение
Java не знает, как сопоставить класс FileReference с Java-эквивалентом. В flex получите ByteArray из FileReference и отправьте его на сервер. Java знает, как обращаться с байтовым массивом. Вы можете сделать это на сервере, как вам угодно.