美文网首页Swift 服务端
Vapor学习之目录结构

Vapor学习之目录结构

作者: 小熊学编程 | 来源:发表于2019-08-07 17:04 被阅读0次

    目录结构

    Vapor 的目录结构是基于 SPM 目录结构构建的。

    .
    ├── Public
    ├── Sources
    │   ├── App
    │   │   ├── Controllers
    │   │   ├── Models
    │   │   ├── boot.swift
    │   │   ├── configure.swift
    │   │   └── routes.swift
    │   └── Run
    │       └── main.swift
    ├── Tests
    │   └── AppTests
    └── Package.swift
    

    接下来介绍每一个目录和文件都做了什么

    Public

    包含任何可以公开访问的文件,包括一些图片,style sheets和脚本
    当Vapor响应request请求的时候,会首先检查被请求的文件是否在该目录下。如果存在,它将忽略应用逻辑并且立即返回该文件。
    比如,localhost:8080/favicon.ico 请求将会检查 Public/favicon.ico 是否存在。如果存在,Vapor将直接返回该文件。

    Sources

    包含所有Swift源码,最顶级目录(AppRun)对应package's modules

    App

    这是最重要的目录,因为所有应用逻辑都将存放于这里。

    Controllers

    Controllers 能很好地将应用逻辑进行分类。大多数 controller 有很多方法用来接收 request 并返回对应的 response 。

    Models

    Models 目录用来存放 Content结构或 Fluent Models

    boot.swift

    此文件包含了一个方法,该方法在应用被启动后,但在开始运行之前将会被调用。应用启动的时候你可以在这里做些处理。
    你可以访问Application在这里你可以创建任何想要的 services

    configure.swift

    此文件包含了一个方法,该方法接受 config、environment 和 services 作为输入参数。在这里可以更改 config 或者 注册 services 。

    routes.swift

    此文件包含一个方法,该方法用于添加各种路由。
    你将会注意到有一个路由示例,正如我们之前所见,它返回了 "hello, world" response。
    你可以创建任意多的路由集合,只需要确认在主路由集合中注册它们即可。

    Tests

    Sources 目录中每个非可执行的 module 都在 ...Tests 目录下有对应的测试文件。

    AppTests

    此目录包含了 App module 的测试用例

    Package.swift

    SPM文件管理

    相关文章

      网友评论

        本文标题:Vapor学习之目录结构

        本文链接:https://www.haomeiwen.com/subject/gyyodctx.html