Я написал клиент для моего сервера на основе мобильного jquery.Я просто не могу понять, как перенести фотографии на мой сервер, потому что когда я использую метод GET для публикации строк base64, сервер говорит, что URI слишком длинный.
Поэтому я попытался переместить веб-страницы и сценарии на сервер иоставил локальный файл для перенаправления на страницу сервера.Но сейчас я могу делать фотографии, но, кажется, у меня нет обратного вызова, когда я закончил.
Вот что я сделал
var imgTakePhotoStatusBase64="Wyk+HjAxHTAyNzg3MDUdODQwHTAxOR0wMDAwMDAwMDAwMDAwMDAdRkRFQh0wMDAwMDAwHTA0MB0dMS8xHTUwLjVMQh1OHVcgMzR0aCBTdHJlZXQdQXVzdGluHVRYHSAeMDYdMTBaR0QwMDQdMTFaUmVjaXBpZW50IENvbXBhbnkgTmFtZR0xMlo5MDEyNjM3OTA2HTE0WioqVEVTVCBMQUJFTCAtIERPIE5PVCBTSElQKiodMjNaTh0yMlocWR0yMFogHDAdMjZaNjEzMxwdHgQ=";
function TextStatus(){
var s=window.prompt("","请输入广播的内容");
if(s!=null&&s!=""){
SetStaus(s);
}
}
$("#pageTakePhotoStatus").live("pageshow", function() {
TakePhotoStatus()
});
function TakePhotoStatus(){
imageData="";
navigator.camera.getPicture(onTakePhotoStatusSuccess, onTakePhotoStatusFail, { quality: 75 });
}
function onTakePhotoStatusSuccess(imageData) {
var image = document.getElementById('imgTakePhotoStatus');
image.src = "data:image/jpeg;base64," + imageData;
imgTakePhotoStatusBase64=imageData;
}
function onTakePhotoStatusFail(message) {
alert('获取照片失败,因为: ' + message);
}
function TakePhotoStatusOk(){
try
{
var myDate = new Date();
var r=myDate.getTime();
var path="uploads.share/"+r+"/"+r+".jpg";
doMethod("ImageUploadByBase64String","{'str':'"+e(imgTakePhotoStatusBase64)+"','path':'"+e(path)+"'}",null,
function(result){
doMethod("PublishPhotoes","{'located':'false','path':'"+e(path)+"','text':'"+e("描述:"+$("#txaTakePhotoStatusDes").val())+"'}",null,
function(r){
alert("您的照片已经发布");
history.back();
});
});
}catch(err)
{
alert(err.description);
}
}
Но onTakePhotoStatusSuccess
не работает, когда я беруФото.Когда я запускаю его на локальном компьютере, это нормально.