Je veux que l’utilisateur télécharge son image depuis le site. J’ai fait la plupart des choses mais maintenant, je rencontre des difficultés lors du téléchargement de l’image sur le serveur. Comment résoudre ce problème?
HTML –
">
Café Script –
$ -> if $('#target1 img').length == 1 $('#file_browser1').addClass 'none' $('#close1').addClass 'delete1' $('#closebtn1').on 'click', (e) -> $('#closemsg1').addClass 'msg1' $('#cancelbtn1').click -> $('#closemsg1').removeClass 'msg1' $('#deletebtn1').click -> $('#close1').removeClass 'delete1' $('#closemsg1').removeClass 'msg1' $('#target1 > img').hide() $('#file_browser1').removeClass 'none' $('#file-upload1').val('') return $('#file-upload1').on 'change', (event) -> files = event.target.files image = files[0] console.log image.size reader = new FileReader $.ajax({ type: "GET", url: "http://localhost:3000/users/get_url/13", success :(data) -> console.log data[0].url $.ajax({ url: data[0].url, type: 'PUT', xhr: -> myXhr = $.ajaxSettings.xhr(); if (myXhr.upload) myXhr.upload.addEventListener('progress', progressHandlingFunction, false); return myXhr; , success: (data) -> alert "abcd", error: (data) -> alert data[0], data: $('#file-upload1')[0].files[0], cache: $.param(false), contentType: "binary/octet-stream", processData: $.param(false) }, 'json'); }) reader.onload = (file) -> img = new Image img.src = file.target.result $('#target1').html img $('#file_browser1').addClass 'none' $('#close1').addClass 'delete1' $('#closebtn1').on 'click', (e) -> $('#closemsg1').addClass 'msg1' $('#cancelbtn1').click -> $('#closemsg1').removeClass 'msg1' $('#deletebtn1').click -> $('#close1').removeClass 'delete1' $('#closemsg1').removeClass 'msg1' $('#target1 > img').hide() $('#file_browser1').removeClass 'none' $('#file-upload1').val('') return return reader.readAsDataURL image console.log files return
PS – J’ai utilisé Json pour obtenir l’URL de l’adresse AWS-URL et l’image doit être téléchargée de manière asynchrone dès que le fichier est sélectionné dans le navigateur, car aucun bouton de téléchargement n’est disponible.