🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: pl.comp.lang.javascript
Article #51514

Re: Object formdata

#51514
From: zpksoft
Date: Wed, 29 Apr 2015 16:56
78 lines
3461 bytes
W dniu środa, 29 kwietnia 2015 09:52:08 UTC+2 użytkownik Jakub napisał:
> znalazłem rozwiązanie
> 
> kod html
> 
> <div id="aimg">
>     <img src="plki.jpg" id="plki.jpg">
>     <img src="pik02.jpg" id="pik02.jpg">
>     <img src="pik03.jpg id="pik03.jpg"">
>     <img src="pik04.jpg" id="pik04.jpg">
> </div>
> 
> 
> <script>
> //pobranie w js kolekcji typu img
> var aimg = document.getElementById("aimg");
> //
> var ilosc = aimg.getElementsByTagName("img");
> 
> //funkcja która zamienia wartość z html IMG src na blob;
> function dataURItoBlob(dataURI){
> var byteString = atob(dataURI.split(',')[1]);
> var mimeString = dataURI.split(',')[0].split(':')[1].split(';')[0];
> var ab = new ArrayBuffer(byteString.length);
> var ia = new Uint8Array(ab);
> for (var i = 0; i < byteString.length; i++){
>    ia[i] = byteString.charCodeAt(i);
> }
> var bb = new Blob([ab], { "type": mimeString });
> return bb;
> }
> 
> var files = im;
> // tworzy nowy  FormData object.
> var formData = new FormData();
> 
> // petla z kolejnymi wartościami IMG
> for (var i = 0; i < files.length; i++) {
>    var file = files[i];
> 
> //zamiana zrodla z img src="" na wartość blob
>    blob = dataURItoBlob(file.src);
> 
> //przypisanie wartoosci blob i nazwy pliku z ID do fourmurza
>   formData.append("photos[]", blob, file.id);
> 
> }
> // Set up the request.
> var xhr = new XMLHttpRequest();
> 
> // Open the connection.
> xhr.open('POST', 'jsformdata001fb.html', true);
> 
> // Set up a handler for when the request finishes.
> xhr.onload = function () {
>     if (xhr.status === 200) {
>      // File(s) uploaded.
>      uploadButton.innerHTML = 'Upload';
>      s = xhr.responseText
> 
>        } else {
>      alert('An error occurred!');
>    }
> };
> 
> // Send the Data.
> xhr.send(formData);
> 
> 
> i po kłopocie
> 
> Jakub

Ciekawe z tym blobem, słyszałem ale nie było mi (do tej pory) potrzebne.
Jeżeli Twój przypadek jest rzeczywisty to wynika z niego że na serwerze masz pliki jpg które ściągasz do bloba po to żeby znów wysłać (z powrotem) na serwer, czyli w to samo miejsce.
W tym przypadku chyba lepiej wysłać samą nazwę pliku?

Paweł
Technical Details
Message-ID: <df1ece44-aa8f-4fd0-9431-c49b3dc12e9a@googlegroups.com>
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed.pionier.net.pl!news.glorb.com!z60no4350363qgd.0!news-out.google.com!a41ni902qgf.1!nntp.google.com!z60no4350358qgd.0!postnews.google.com!glegroupsg2000goo.googlegroups.com!not-for-mail
References: <553e337c$0$2208$65785112@news.neostrada.pl> <55408d78$0$8374$65785112@news.neostrada.pl>

Show Full Headers
Complete Article Headers
X-Received: by 10.236.202.208 with SMTP id d56mr93079yho.6.1430326619106;        Wed, 29 Apr 2015 09:56:59 -0700 (PDT)
X-Received: by 10.140.102.75 with SMTP id v69mr475qge.19.1430326619049; Wed, 29 Apr 2015 09:56:59 -0700 (PDT)
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed.pionier.net.pl!news.glorb.com!z60no4350363qgd.0!news-out.google.com!a41ni902qgf.1!nntp.google.com!z60no4350358qgd.0!postnews.google.com!glegroupsg2000goo.googlegroups.com!not-for-mail
Newsgroups: pl.comp.lang.javascript
Date: Wed, 29 Apr 2015 09:56:58 -0700 (PDT)
In-Reply-To: <55408d78$0$8374$65785112@news.neostrada.pl>
Complaints-To: groups-abuse@google.com
Injection-Info: glegroupsg2000goo.googlegroups.com; posting-host=83.21.249.156; posting-account=8ND_mgoAAAD5J9y9fnaTB1Kcu7xKWk7Q
NNTP-Posting-Host: 83.21.249.156
References: <553e337c$0$2208$65785112@news.neostrada.pl> <55408d78$0$8374$65785112@news.neostrada.pl>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <df1ece44-aa8f-4fd0-9431-c49b3dc12e9a@googlegroups.com>
Subject: Re: Object formdata
From: zpksoft <zpksoft@op.pl>
Injection-Date: Wed, 29 Apr 2015 16:56:59 +0000
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit