I'm trying to add a download button to our site.  Clicking it initiates 
this ajax request:
$.ajax
  url: '/reports/get_file_from_json_service'
  data: { docId:window.DOCUMENT_ID, file_type:'pdf' }
  type: 'POST'
  success: (data, stat, xhr) => console.log 'download', stat
  error: (xhr, stat, err) => console.log 'download', stat, err


This hits some service that retrieves the current document from a 
data-store.  For testing in an offline environment, I've mocked an Express 
route and ends up here:
exports.getPDF = (req, res) ->
  date = new Date().getTime()
  console.log "Downloading document #{req.body.docId} of type 
#{req.body.file_type}"

  res.download 'mock_routes/report.pdf', "report#{date}.pdf", (err) ->
    if err
      console.log "something went wrong downloading report-#{date}.pdf", err
    else
      console.log 'success'
      exec 'touch mock_routes/report.pdf'


This appears to be working.  I get a success message from the server, and 
from the client.  I can see the PDF body using Chrome's Inspector. 
 However, the browser is not prompting me to save the PDF.  The response 
header looks like so:

   1. Accept-Ranges:
   bytes
   2. Cache-Control:
   public, max-age=0
   3. Connection:
   keep-alive
   4. Content-Disposition:
   attachment; filename="report1362670336342.pdf"
   5. Content-Length:
   30042
   6. Content-Type:
   application/pdf
   7. Date:
   Thu, 07 Mar 2013 15:32:16 GMT
   8. ETag:
   "30042-1362670171000"
   9. Last-Modified:
   Thu, 07 Mar 2013 15:29:31 GMT
   10. Vary:
   Accept-Encoding
   11. X-Powered-By:
   Express
   

My understanding is that the Content-Disposition tells the browser to save 
the file, and suggest the filename "report{date}.pdf. This isn't happening 
though. Nothing happens. Any ideas why the browser is not prompting to Save 
As?

Thank you,
Geoff

-- 
-- 
Job Board: http://jobs.nodejs.org/
Posting guidelines: 
https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines
You received this message because you are subscribed to the Google
Groups "nodejs" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/nodejs?hl=en?hl=en

--- 
You received this message because you are subscribed to the Google Groups 
"nodejs" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/groups/opt_out.


Reply via email to