Como enviar imagens através do servidor Worklight sem codificação base64?
Eu estou tentando descobrir como enviar imagens para o meu servidor de back-end usando adaptadores de Worklight. Eu sei que posso enviá-los através de adaptadores Worklight usando a codificação Base64, mas isso implica em cerca de 30% mais tráfego entre os servidores e alguma sobrecarga de processamento indesejada.
Por enquanto estou usando a biblioteca Phonegap FileTransfer como mostro abaixo, mas isso cria uma conexão direta entre o cliente e o servidor back-end não passando pelo servidor do Worklight como eu quero.
var options = new FileUploadOptions();
options.fileKey="file";
options.fileName=imageURI.substr(imageURI.lastIndexOf('/')+1);
options.mimeType="image/jpeg";
var headers = {"Content-Type": "image/jpeg"};
options.headers = headers;
var ft = new FileTransfer();
ft.upload(imageURI, encodeURI(host + "/images"), imageUploadSuccess, imageUploadFail, options);
function imageUploadSuccess(r) {
WL.Logger.debug("Submit success! HTTP Status Code = " + r.responseCode);
WL.Logger.debug("Response = " + r.response);
WL.Logger.debug("Bytes sent = " + r.bytesSent);
$.mobile.changePage('#SuccessPage');
}
function imageUploadFail(error) {
WL.Logger.debug("submit error! source = " + error.source);
WL.Logger.debug("target = " + error.target);
$.mobile.changePage('#FailPage');
}
Existe uma maneira que eu possa fazer isso?
Agradeço antecipadamente.
- Editar -
Outro problema que ocorre é que quando meu servidor de back-end recebe o arquivo, parece corrompido e não pode ser lido como uma imagem.