【问题标题】:How to post a value in Firebase using Vapor?如何使用 Vapor 在 Firebase 中发布值?
【发布时间】:2017-08-22 00:14:52
【问题描述】:

我学习了一些关于 Vapor 的教程,尽管我了解了如何在服务器上获取或放置或修补一些 JSON 值,但我不知道如何从应用程序内将字典发送到 Firebase。

我尝试使用 Postman 在 Firebase 上写一些数据,我没有问题,但我不知道如何使用 Vapor 处理请求的参数?

谁能告诉我我必须把数据库的 URL 放在哪里以及如何提出请求?或者更好的是,如果GitHub上有例子,我可以看看?

【问题讨论】:

    标签: json firebase firebase-realtime-database vapor


    【解决方案1】:

    没有用于 Server-Side-Swift 的 Firebase SDK,因此您可以使用 Firebase 的 REST API 处理 JSON 值。

    See this topic.

    【讨论】:

    • 我知道这就是我所要求的,一些关于我如何处理它的例子。
    【解决方案2】:

    您需要创建 JWT 令牌才能访问 Firebase 数据库。这是最难的部分。

    let drop = Droplet()
    func readUsersNodeInFb()  {
    
        let customer = userStripeIdCustomer
        do {
            let responseFirebase = try drop.client.get(
                "https://bev-708.firebaseio.com/Users/\(usersUID!)/\(customer!)/\(bookingNumber!).json", headers: ["Authorization":"Bearer \(TokenData.acessTokenReceived!)"], query: [:],
                body: " a JSON Object")
    
    
            responseFirebaseAssigned = responseFirebase
        } catch let error {
    
            let errorString = "error line 115 in ClaimBookingCleaner received when trying to update  Firebase, \(error.localizedDescription)"
            errorFirebaseReceived = errorString
            return
        }
    
    
        //response from Firebase
        let bodyReceived = responseFirebaseAssigned?.body.bytes
    
        do {
            let jsonFire = try JSON(bytes:bodyReceived!)
             JsonFirebase = jsonFire
             print("jsonFire is \(jsonFire)")
        } catch let error {
    
            let errorString = "jsonFire could not be built with the payload received from server, line 55 in ClaimBookingCleaner error \(String(describing: error.localizedDescription))"
            errorFirebaseReceived = errorString
            return
        }
    

    【讨论】:

    • 相当没用,因为您的代码遗漏了所有内容。什么是 drop,什么是 responseFirebaseAssigned,什么是 xy...
    • let drop = Droplet() Droplet 是 Vapor 服务器的核心。它包含大量功能,这些功能将成为我们服务器的支柱。
    • 好的。我已经能够做几乎所有事情。我唯一不知道的是如何创建令牌
    • 如果您想查看它,我已经在一个老问题上创建了一个赏金。 stackoverflow.com/questions/46396224/…
    • @DavidSeek 我已经回答了你的问题。让我知道它是否适合您。
    猜你喜欢
    • 2021-05-09
    • 1970-01-01
    • 2018-11-02
    • 1970-01-01
    • 2019-07-04
    • 1970-01-01
    • 1970-01-01
    • 2021-05-05
    • 2018-09-04
    相关资源
    最近更新 更多