Re: vibe / self contained standalone executable?

2019-07-28 Thread bauss via Digitalmars-d-learn

On Sunday, 28 July 2019 at 18:54:37 UTC, Sebastiaan Koppe wrote:

On Sunday, 28 July 2019 at 14:42:48 UTC, Robert M. Münch wrote:

On 2019-07-28 14:14:06 +, Sebastiaan Koppe said:

I am using 
https://dlang.org/spec/expression.html#import_expressions for 
text files. Don't know if it works on binary files as well.


And this works than good together with the vibe framework? So, 
it's not requiring or forcing one to use files or databases?


Haven't tested it, but something like this:

---
import vibe.core.core : runApplication;
import vibe.http.server;

void handleRequest(scope HTTPServerRequest req, scope 
HTTPServerResponse res)

{
if (req.path == "/file.txt")
res.writeBody(import("file.txt"), "text/plain");
}

void main()
{
auto settings = new HTTPServerSettings;
settings.port = 8080;
settings.bindAddresses = ["::1", "127.0.0.1"];

auto l = listenHTTP(settings, &handleRequest);
scope (exit) l.stopListening();

runApplication();
}
---

Of course you may want to use the router or the rest generator 
for this. See the examples in the repo.


Doing it like that is kinda pointless though because you can just 
serve static files.


http://vibed.org/api/vibe.http.fileserver/serveStaticFiles


Re: vibe / self contained standalone executable?

2019-07-28 Thread Sebastiaan Koppe via Digitalmars-d-learn

On Sunday, 28 July 2019 at 14:42:48 UTC, Robert M. Münch wrote:

On 2019-07-28 14:14:06 +, Sebastiaan Koppe said:

I am using 
https://dlang.org/spec/expression.html#import_expressions for 
text files. Don't know if it works on binary files as well.


And this works than good together with the vibe framework? So, 
it's not requiring or forcing one to use files or databases?


Haven't tested it, but something like this:

---
import vibe.core.core : runApplication;
import vibe.http.server;

void handleRequest(scope HTTPServerRequest req, scope 
HTTPServerResponse res)

{
if (req.path == "/file.txt")
res.writeBody(import("file.txt"), "text/plain");
}

void main()
{
auto settings = new HTTPServerSettings;
settings.port = 8080;
settings.bindAddresses = ["::1", "127.0.0.1"];

auto l = listenHTTP(settings, &handleRequest);
scope (exit) l.stopListening();

runApplication();
}
---

Of course you may want to use the router or the rest generator 
for this. See the examples in the repo.


Re: vibe / self contained standalone executable?

2019-07-28 Thread rikki cattermole via Digitalmars-d-learn

On 29/07/2019 2:42 AM, Robert M. Münch wrote:

On 2019-07-28 14:14:06 +, Sebastiaan Koppe said:

I am using https://dlang.org/spec/expression.html#import_expressions 
for text files. Don't know if it works on binary files as well.


And this works than good together with the vibe framework? So, it's not 
requiring or forcing one to use files or databases?




vibe.d uses this for their templates.

For a VFS you would need to have your own API (can be library) that you 
explicitly use.


Re: vibe / self contained standalone executable?

2019-07-28 Thread Robert M. Münch via Digitalmars-d-learn

On 2019-07-28 14:14:06 +, Sebastiaan Koppe said:

I am using https://dlang.org/spec/expression.html#import_expressions 
for text files. Don't know if it works on binary files as well.


And this works than good together with the vibe framework? So, it's not 
requiring or forcing one to use files or databases?


--
Robert M. Münch
http://www.saphirion.com
smarter | better | faster



Re: vibe / self contained standalone executable?

2019-07-28 Thread bauss via Digitalmars-d-learn

On Sunday, 28 July 2019 at 14:14:06 UTC, Sebastiaan Koppe wrote:

On Sunday, 28 July 2019 at 13:45:50 UTC, Robert M. Münch wrote:
Is it possible to pack a complete "web-app" (serving web-pages 
and providing REST API) into a single executable so that no 
other files need to be accessed and everything is servered 
from something like a "virtual filesystem" which is in memory 
only?


I am using 
https://dlang.org/spec/expression.html#import_expressions for 
text files. Don't know if it works on binary files as well.


It works on anything since it just loads in the data (as text I 
think?) from the file. But you can just convert it to a buffer 
etc.


Re: vibe / self contained standalone executable?

2019-07-28 Thread Sebastiaan Koppe via Digitalmars-d-learn

On Sunday, 28 July 2019 at 13:45:50 UTC, Robert M. Münch wrote:
Is it possible to pack a complete "web-app" (serving web-pages 
and providing REST API) into a single executable so that no 
other files need to be accessed and everything is servered from 
something like a "virtual filesystem" which is in memory only?


I am using 
https://dlang.org/spec/expression.html#import_expressions for 
text files. Don't know if it works on binary files as well.


vibe / self contained standalone executable?

2019-07-28 Thread Robert M. Münch via Digitalmars-d-learn
Is it possible to pack a complete "web-app" (serving web-pages and 
providing REST API) into a single executable so that no other files 
need to be accessed and everything is servered from something like a 
"virtual filesystem" which is in memory only?


--
Robert M. Münch
http://www.saphirion.com
smarter | better | faster