Where are you reading the chunked incoming data? I can't find it in the code you pasted.
So, the data is chunked and you have to read the data correctly. Spec: http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.6.1 On Thu, Jul 9, 2015 at 3:28 PM, Vinod Kavinda <vi...@wso2.com> wrote: > Hi, > Thanks Inshaf. But this won't solve my problem. I have already done the > downloading directly from browser, option. What I'm expecting is to get it > to backend and then pass back to browser. > This chunking is the problem. > > Regards, > Vinod > > On Thu, Jul 9, 2015 at 3:18 PM, Inshaf Mahath <ins...@wso2.com> wrote: > >> Hi Vinod, >> >> Since you are using Jaggery, you can use JavaScript to create and >> download a file. You can have a look on [1], but not sure whether it aligns >> with your requirement. >> >> [1] - >> http://blog.eliacontini.info/post/79860720828/export-to-csv-using-javascript-and-the-download >> >> Thanks, >> Inshaf >> >> >> >> On Thu, Jul 9, 2015 at 1:49 PM, Vinod Kavinda <vi...@wso2.com> wrote: >> >>> Hi all, >>> >>> I'm trying to download a file from a given URL (File get downloaded if >>> we directly go to the link via browser), in a jaggery app. >>> >>> I need to get the file to the Jaggery backend and send it to the browser >>> so that file should get downloaded. I tried this by sending a get request >>> to the relevant URL, setting all the headers received from get response to >>> the jaggery response and printing the payload as shown below. >>> >>> var httpClient = new XMLHttpRequest(); >>> httpClient.open('GET', url, true); >>> httpClient.setRequestHeader('COOKIE', >>> session.get('MGT_SESSION')); >>> >>> //copy header details >>> var contentType = >>> httpClient.getResponseHeader("Content-Type"); >>> var transferEncoding = >>> httpClient.getResponseHeader("Transfer-Encoding"); >>> var vary = httpClient.getResponseHeader("Vary"); >>> var date = httpClient.getResponseHeader("Date"); >>> var server = httpClient.getResponseHeader("Server"); >>> var contentDisposition = >>> httpClient.getResponseHeader("Content-Disposition"); >>> >>> response.addHeader('Content-Type', contentType); >>> response.addHeader('Transfer-Encoding', transferEncoding); >>> response.addHeader('Vary', vary); >>> response.addHeader('Date', date); >>> response.addHeader('Server', server); >>> response.addHeader('Content-Disposition', contentDisposition); >>> >>> print(httpClient.responseText); >>> >>> A file get downloaded as expected. But is is a corrupted file with less >>> size than actual size of the file. >>> >>> I think the reason for this is the data is coming as chunked data >>> packets. The 'Transfer-Encoding' header value is 'chunked'. >>> >>> Any hint on resolving this is much appreciated. >>> >>> Thank You, >>> Vinod >>> >>> >>> -- >>> Vinod Kavinda >>> Software Engineer >>> *WSO2 Inc. - lean . enterprise . middleware <http://www.wso2.com>.* >>> Mobile : +94 (0) 712 415544 >>> Blog : http://soatechflicks.blogspot.com/ >>> >>> >>> _______________________________________________ >>> Dev mailing list >>> Dev@wso2.org >>> http://wso2.org/cgi-bin/mailman/listinfo/dev >>> >>> >> >> >> -- >> Inshaf Mahath >> >> > > > -- > Vinod Kavinda > Software Engineer > *WSO2 Inc. - lean . enterprise . middleware <http://www.wso2.com>.* > Mobile : +94 (0) 712 415544 > Blog : http://soatechflicks.blogspot.com/ > > > _______________________________________________ > Dev mailing list > Dev@wso2.org > http://wso2.org/cgi-bin/mailman/listinfo/dev > > -- Thanks & regards, Nirmal Associate Technical Lead - Data Technologies Team, WSO2 Inc. Mobile: +94715779733 Blog: http://nirmalfdo.blogspot.com/
_______________________________________________ Dev mailing list Dev@wso2.org http://wso2.org/cgi-bin/mailman/listinfo/dev