Ibm mobilefirst 使用Http适配器将映像存储到远程服务器
我想在远程服务器上显示映像和存储映像。我使用的是Ibm Worklight 6.2版。我已经浏览了许多链接,但没有找到解决方案 我的HTML页面代码是Ibm mobilefirst 使用Http适配器将映像存储到远程服务器,ibm-mobilefirst,Ibm Mobilefirst,我想在远程服务器上显示映像和存储映像。我使用的是Ibm Worklight 6.2版。我已经浏览了许多链接,但没有找到解决方案 我的HTML页面代码是 <fieldset style="height:auto;width:100% "> <div id="Image" style="float:left;"> </div>
<fieldset style="height:auto;width:100% ">
<div id="Image" style="float:left;">
</div>
<div id ="delImage">
</div>
</fieldset>
这里,我在一个div中添加动态图像。我的问题是
如果要将图像发送到远程服务器,则需要对图像进行base64编码,然后发送此字符串以存储在远程服务器的数据库中 如果要检索它,则需要获取字符串,然后将base64字符串解码回图像文件类型,并在HTML中显示图像(图像应使用Cordova API存储在设备存储器中,正如您已演示的使用)
事实上,如果您进行搜索,您将在搜索中找到上述内容。如果您要将图像发送到远程服务器,则需要对图像进行base64编码,然后发送此字符串以存储在远程服务器的数据库中 如果要检索它,则需要获取字符串,然后将base64字符串解码回图像文件类型,并在HTML中显示图像(图像应使用Cordova API存储在设备存储器中,正如您已演示的使用)
事实上,如果你搜索过,你会在搜索中找到上面的内容。我完全同意你的观点,伊丹,我只是想知道如何将图像编码到Base 64,因为我只获取图像数据,其中只有图像URI。我得到了它,如果我将文件URI替换为数据URL,我将以Base 64格式自动获取图像,并将其发送到远程服务器我完全同意你的意见Idan,我只想知道如何将图像编码到Base 64,因为我只获取图像URI所在的ImageData。如果我将文件URI替换为数据URL,我将自动获取Base 64格式的图像,并将其发送到远程服务器
uploadImage = function (){
navigator.camera.getPicture(onSuccessCallBack, onFailCallBack, {
quality: 50,
sourceType: Camera.PictureSourceType.CAMERA,
destinationType: Camera.DestinationType.FILE_URI
});
};
function onSuccessCallBack (imageData){
var img = document.createElement("img");
img.style.width = "60px";
img.style.height="60px";
img.src = imageData;
var Image = document.getElementById("Image");
Image.appendChild(img);
var delImg = document.createElement("img");
delImg.style.width = "60px";
delImg.style.height="60px";
delImg.src = "images/brws_gal.png";
var deleteImg = document.getElementById("delImage");
deleteImg.appendChild(delImg);
var invocationData = {
adapter : 'DisbursalRequestImageAdapter',
procedure : "uploadImageForDisbursal",
parameters : [ requestObject, sessionId, operationFlag,'','' ]
};
var options = {
timeout : timeout,
onSuccess : successCreateImg,
onFailure : failureCreateImg
};
WL.Client.invokeProcedure(invocationData, options);
};