From ee90248d5f1e1861b1999f9fea3fb0af2b0a32ab Mon Sep 17 00:00:00 2001 From: Eldar Sadykov <88986450+eldarsadykov@users.noreply.github.com> Date: Tue, 11 Apr 2023 17:48:30 +0300 Subject: [PATCH] FileMiddleware from Xcode Project docs (#768) * Add FileMiddleware in an Xcode Project explanation. * Delete extra space. * Update docs/advanced/middleware.md * Update docs/advanced/middleware.md --------- Co-authored-by: Tim Condon <0xTim@users.noreply.github.com> --- docs/advanced/middleware.md | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/docs/advanced/middleware.md b/docs/advanced/middleware.md index 4e0921fb..3d5ea4e0 100644 --- a/docs/advanced/middleware.md +++ b/docs/advanced/middleware.md @@ -28,7 +28,7 @@ app.middleware.use(MiddlewareA()) app.middleware.use(MiddlewareB()) app.group(MiddlewareC()) { - $0.get("hello") { req in + $0.get("hello") { req in "Hello, middleware." } } @@ -124,6 +124,14 @@ app.middleware.use(file) Once `FileMiddleware` is registered, a file like `Public/images/logo.png` can be linked from a Leaf template as ``. +If your server is contained in an Xcode Project, such as an iOS app, use this instead: + +```swift +let file = try FileMiddleware(bundle: .main, publicDirectory: "Public") +``` + +Also make sure to use Folder References instead of Groups in Xcode to maintain folder structure in resources after building the application. + ## CORS Middleware Cross-origin resource sharing (CORS) is a mechanism that allows restricted resources on a web page to be requested from another domain outside the domain from which the first resource was served. REST APIs built in Vapor will require a CORS policy in order to safely return requests to modern web browsers.