Как получите файл в aspx-странице, когда пройти выбираем файл формы мобильного устройства
Привет , я использую плагин cordova FileTransfer для загрузки и загрузки в мобильных устройствах Android и IOS,теперь я застрял с receive in aspx page с помощью HttpPostedFile
Из мобильного приложения я передаю файл, используя приведенный ниже код.
в событии нажатия кнопки
function uploadFile() { navigator.camera.getPicture( uploadPhoto, function (message) { $("#ErrorDiv").text("Failed to get a picture. Please select one."); }, { quality: 50, destinationType: navigator.camera.DestinationType.FILE_URI, sourceType: navigator.camera.PictureSourceType.PHOTOLIBRARY }); function uploadPhoto(fileURI) { var ft = new FileTransfer(); ft.upload(fileURI, encodeURI("http://" + localStorage.serverip + "/UService/ReceiveUpload.aspx"), UploadSuccess, UploadFail, options); } }
В приведенном выше localStorage. serverip является сервером, а в ReceiveUpload.aspx Page load я пишу ниже код для получения файла и сохранения в папке server machine.
Protected Sub Page_Load(sender As Object, e As EventArgs) Handles Me.Load If Request.Files.Count <= 0 Then Exit Sub End If Dim MyFileCollection As HttpFileCollection MyFileCollection = Request.Files Dim postedFile As HttpPostedFile = Request.Files(0) Dim inStream As System.IO.Stream = postedFile.InputStream Dim fileData As Byte() = New Byte(postedFile.ContentLength - 1) {} inStream.Read(fileData, 0, postedFile.ContentLength) Dim writepath As String = Server.MapPath(".") & "\UserFiles" postedFile.SaveAs(writepath) End Sub
Если я выбираю файлы из следующих способов ,это работает нормально
Галерея -- & gt; камера или
Галерея-- & gt; скриншоты или
Галерея-- & gt;изображения WhatsApp или
Gallert-- & gt; картинки или из Dropbox
это скриншот, когда я выбираю один из вышеперечисленных способов http://prntscr.com/dlkeh7 и это работает.
Но если выбрать файлы непосредственно из фотографий, внутренней памяти, SD-карты не может передать файл с помощью приведенного ниже кода ,это скриншот http://prntscr.com/dlkebn или http://prntscr.com/dlke7k
Запрос.Количество файлов всегда равно 0.
Что случилось с fileURI ? на приведенном выше скриншоте я показал fileURI в alert msg.
Что я уже пробовал:
Но если попытаться загрузить со следующим кодом, то можно перенести его из любого места с мобильных устройств
document.addEventListener("deviceready", onDeviceReady, false); function onDeviceReady() { navigator.camera.getPicture( uploadPhoto, function(message) { alert('get picture failed'); }, { quality : 50, destinationType : navigator.camera.DestinationType.FILE_URI, sourceType : navigator.camera.PictureSourceType.PHOTOLIBRARY } ); } function uploadPhoto(imageURI) { var options = new FileUploadOptions(); options.fileKey="file"; options.fileName=imageURI.substr(imageURI.lastIndexOf('/')+1); options.mimeType="image/jpeg"; var params = {}; params.value1 = "test"; params.value2 = "param"; options.params = params; var ft = new FileTransfer(); ft.upload(imageURI, encodeURI("http://posttestserver.com/post.php"), win, fail, options); }
Пожалуйста ответьте как можно скорее
С уважением
Аравинд