美文网首页
开发第一个Http服务

开发第一个Http服务

作者: DasonXie | 来源:发表于2020-01-09 16:48 被阅读0次

    一:快速入手Perfect提供Http服务
    二:开发第一个Http服务
    三:MySQL接触
    四:Navicat for MySQL的基本使用
    五:Perfect连接MySQL数据库
    六:使用域名访问Http服务
    七:后台服务器上传和下载文件

    接下来开始Http接口的开发,在main文件中操作

    1.导入库
    import PerfectHTTP
    import PerfectHTTPServer
    
    2. 创建路由集合

    路由集合类似于数组,每个路由相当于一个API

    var routes = Routes()
    
    3. 添加API
    • 添加实际的路由到路由集合中
    ///参数一:路由的http动作,有"get"、"post"、"delete"、"patch"等请求类型,但是一般使用的是"get"和"post"
    ///参数二:路由节点,指向特定的函数,类似于方法名
    routes.add(method: .post, uri: "/userInfo") {
        request, response in
        let docRoot = request.documentRoot
        //获取用户上传的参数
        let userID = request.param(name: "userId") ?? "0"
        //模拟返回的json数据
        let jsonString = "{\"code\": 200, \"msg\": \"success\", \"body\": { \"name\": \"dason\", \"age\": 30, \"userId\": \(userID) }  }"
        response.setBody(string: jsonString)
        //表示此请求已完成,任何当前可用的头和正文数据都将推送到客户端
        .completed()
    }
    
    • get和post方法创建的区别只在于参数一的设定,获取参数方面都是一样的方法request.param(name: "key")
    1. 启动HTTP服务
    do {
        // 启动HTTP服务器
        try HTTPServer.launch(
            .server(name: "www.example.ca", port: 8181, routes: routes))
    } catch {
        fatalError("\(error)") // fatal error launching one of the servers
    }
    

    相关文章

      网友评论

          本文标题:开发第一个Http服务

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