美文网首页
vapor集成protocolbuffer

vapor集成protocolbuffer

作者: 搞好关系 | 来源:发表于2018-11-30 07:47 被阅读34次

    VaporPB


    简便的将SwiftProtobuf集成进Vapor项目中

    引用项目中

    .package(url: "git@github.com:skeyboy/SwiftVaporPB.git", from: "0.0.1")
    
    dependencies[..."SwiftVaporPB"]
    

    使用

    import SwiftVaporPB
    
    router.get("pb") { (req:Request) -> EventLoopFuture<PB<BookInfo>> in
            let bookInfo =   BookInfo.with({ ( bookInfo:inout BookInfo) in
                bookInfo.id = 123
                bookInfo.author = "Jack"
                bookInfo.title = "Hello"
            })
             return try req.makePB(value: bookInfo)
        }
    

    返回格式

    struct PB<T> : Content where T: Message{
        var value: Data
        init(_ data: T) throws {
            self.value = try data.serializedData()
        }
    }
    

    从我们的定一种可以看出,我们只是进行一个简单的包装
    结果参考:

    TargetTarget

    tag:0.0.2
    添加命名空间

    func testPBBase(){
            XCTAssert(pb?.pb.entry != nil, "测试失败")
            XCTAssert(pb?.pb.textFormatString() == bookInfo?.textFormatString(), "测试失败")
            XCTAssert(pb?.pb.textString == pb?.textString, "测试失败")
        }
    

    相关文章

      网友评论

          本文标题:vapor集成protocolbuffer

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