Почему SharePointPlus не отправляет изображение из браузера Airwatch на iPad?

#javascript #jquery #ipad #sharepoint #sharepoint-2010

#javascript #jquery #iPad #sharepoint #sharepoint-2010

Вопрос:

Я создаю форму на HTML-странице, и у меня возникают проблемы с отправкой изображения в папку документов SharePoint, метод, который я использую, отлично работает в Google Chrome на рабочем столе и успешно отправляет сообщения в папку SharePoint, но по какой-то причине не хочет работать в браузере AirWatch на iPad, и я не могу найти хорошую документацию по Airwatch. Я использую библиотеку javascript SharePointPlus для отправки изображения в SharePoint. Изображение успешно преобразовано в base64, и я могу распечатать строку base64 в текстовое поле на странице html.

Когда я нахожусь на iPad / Airwatch, я выбираю изображение, и строка base64 вставляется в текстовое поле, затем я нажимаю кнопку Отправки данных, и я не получаю предупреждение after: function, которое я установил, и изображение не отправляется в SharePoint. Документация SharePointPlus также довольно скудна.

Вот моя функция SharePointPlus CreateFile в javascript, которая запускается, когда я нажимаю отправить:

 var fileName;

function changeHandler(inputElement){
   var fileReader, file;
   fileReader=new FileReader();
   var fileList=inputElement.files;
   file=fileList[0];
   // console.log(file.name);
   fileName = file.name;
   fileReader.onload=load_handler;
   fileReader.readAsDataURL(file);
}

function load_handler(event){
   var url=event.target.result;
   // removes data:image/jpeg:base64 from beginning of base64
   url = url.substring(url.indexOf(',') 1);
   // console.log(url);
   fileInBase64 = url;
   document.getElementById("log").value=fileInBase64;
}//end function load_handler


$("#submit_pic").click(function(){
    //fileName is the base64 encoded image string
    myImage = fileInBase64;

    $SP().createFile({
        content:myImage,
        encoded:true,
        destination:"http://example.com/folder/Code/myfile.jpg",
        url:"/folder",
        after:function(){alert('done');}
     });
  });
  

Редактировать: Теперь я думаю, что это как-то связано со строкой base64 на iPad, после проверки строки и попытки преобразовать ее обратно в изображение через веб-сайт, это работает неправильно … вот весь код, который захватывает файл, преобразует в base64 и пытается отправить его.

Если я предупреждаю myImage, я получаю очень большое окно предупреждения, которое охватывает высоту iPad без текста в нем. Похоже, что там что-то есть, но не совсем. Если я предупреждаю о жестко закодированной строке, она выглядит нормально.

Используемые технологии: SharePoint 2010 Jquery SPServices SharePointPlus AirWatch browser с Ipad Chrome на рабочем столе

Ответ №1:

Оказывается, размер изображения слишком велик. Если я сделаю снимок с помощью iPad, который увеличен, я смогу загрузить изображение просто отлично. Оно должно быть увеличено примерно наполовину. Не уверен, как еще это сделать, но пока это будет работать.