Thread overview | |||||||
---|---|---|---|---|---|---|---|
|
September 11, 2020 Vibe-D File Question | ||||
---|---|---|---|---|
| ||||
It seems like rejected-software forum is flooded with spam, so I decided to ask it here. Is there a way to generate a file -csv for example- on the back-end and serve it to the front-end as a file. Serve static file [1] function does this for files saved on the disk. I want to be able to generate a file during runtime and serve it to the client. Is this possible? Thanks, S [1] https://vibed.org/api/vibe.http.fileserver/serveStaticFile |
September 11, 2020 Re: Vibe-D File Question | ||||
---|---|---|---|---|
| ||||
Posted in reply to Selim Ozel Attachments:
| On Fri, Sep 11, 2020 at 1:10 PM Selim Ozel via Digitalmars-d-learn < digitalmars-d-learn@puremagic.com> wrote: > It seems like rejected-software forum is flooded with spam, so I decided to ask it here. Is there a way to generate a file -csv for example- on the back-end and serve it to the front-end as a file. > > Serve static file [1] function does this for files saved on the disk. I want to be able to generate a file during runtime and serve it to the client. Is this possible? > > Thanks, > S > > > [1] https://vibed.org/api/vibe.http.fileserver/serveStaticFile > > > https://vibed.org/api/vibe.http.server/HTTPServerResponse.writeBody |
September 11, 2020 Re: Vibe-D File Question | ||||
---|---|---|---|---|
| ||||
Attachments:
| On Fri, Sep 11, 2020 at 1:15 PM Daniel Kozak <kozzi11@gmail.com> wrote: > On Fri, Sep 11, 2020 at 1:10 PM Selim Ozel via Digitalmars-d-learn < digitalmars-d-learn@puremagic.com> wrote: > >> It seems like rejected-software forum is flooded with spam, so I decided to ask it here. Is there a way to generate a file -csv for example- on the back-end and serve it to the front-end as a file. >> >> Serve static file [1] function does this for files saved on the disk. I want to be able to generate a file during runtime and serve it to the client. Is this possible? >> >> Thanks, >> S >> >> >> [1] https://vibed.org/api/vibe.http.fileserver/serveStaticFile >> >> >> > https://vibed.org/api/vibe.http.server/HTTPServerResponse.writeBody > import vibe.core.core; import vibe.http.server; void main() { runWorkerTaskDist(&wrap); runApplication(); } void wrap() { auto settings = new HTTPServerSettings(":8080"); settings.options |= HTTPServerOption.reusePort; listenHTTP(settings, &fun); } void fun(HTTPServerRequest req, HTTPServerResponse res) nothrow { try { res.headers["Content-Disposition"] = "filename=\"muj.csv\""; res.writeBody("some;csv;data", "text/csv"); } catch (Exception e) {} } |
September 11, 2020 Re: Vibe-D File Question | ||||
---|---|---|---|---|
| ||||
Posted in reply to Daniel Kozak | On 9/11/20 7:28 AM, Daniel Kozak wrote: > void fun(HTTPServerRequest req, HTTPServerResponse res) nothrow > { > try > { > res.headers["Content-Disposition"] = "filename=\"muj.csv\""; > res.writeBody("some;csv;data", "text/csv"); > } > catch (Exception e) > {} > } Selim, note the Content-Disposition header in particular. https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Disposition |
September 12, 2020 Re: Vibe-D File Question | ||||
---|---|---|---|---|
| ||||
Posted in reply to James Blachly | On Friday, 11 September 2020 at 13:03:16 UTC, James Blachly wrote:
> On 9/11/20 7:28 AM, Daniel Kozak wrote:
>> void fun(HTTPServerRequest req, HTTPServerResponse res) nothrow
>> {
>> try
>> {
>> res.headers["Content-Disposition"] = "filename=\"muj.csv\"";
>> res.writeBody("some;csv;data", "text/csv");
>> }
>> catch (Exception e)
>> {}
>> }
>
> Selim, note the Content-Disposition header in particular.
>
> https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Disposition
Thank you Daniel and James! The example works. It's exactly what I was asking for. I got the core idea with the Content Disposition article.
|
Copyright © 1999-2021 by the D Language Foundation