RBS 1.2.1

RBS 1.2.1

Baran BayganMert Tuzer维护。



 
依赖
Moya~> 14.0
Alamofire~> 5.2
ObjectMapper~> 3.4
KeychainSwift~> 19.0
JWTDecode~> 2.4
TrustKit>= 0
 

RBS 1.2.1

  • 作者
  • baranbaygan

RBS

CI Status Version License Platform

示例

要运行示例项目,请首先克隆仓库,然后从示例目录运行pod install命令。

RBS介绍

RBS可以被开发者用来构建基于事件的系统。您应先创建一个RBS账户和一个RBS项目。

https://console.rtbs.io

要求

您需要有一个RTBS项目ID。

安装

Cocoapods

RTBS可以通过CocoaPods获取。要安装它,只需将以下行添加到您的Podfile中

pod 'RBS'

Swift Package Manager

您可以使用以下仓库URL和main分支使用Swift包管理器

https://github.com/rettersoft/rbs-ios-sdk

初始化SDK

使用RBS控制台创建的项目ID初始化SDK

let rbs = RBS(config: RBSConfig(projectId: "{PROJECT_ID}"))

认证

RBS客户端的 authenticateWithCustomToken 方法用于用户认证。如果您不调用此方法,客户端将作为匿名用户发送操作。

rbs.authenticateWithCustomToken(customToken)

RBS自定义令牌可以通过通过RBS SDK通过联系RBS核心服务由RBS服务生成。

  • 客户端应用程序向有权生成RBS自定义令牌的RBS服务发送请求。
  • RBS服务使用服务器端的RBS SDK与RBS核心通信以生成带有用户凭证的自定义令牌。
  • RBS核心创建一个自定义令牌并将其返回到服务。
  • 服务将其返回到客户端应用程序。
  • 客户端应用程序使用RBS SDK的 authenticateWithCustomToken 方法以该用户身份登录。从那时起,该客户端发出的任何请求都将由所有RBS服务识别为该用户。

您可以使用 .signout 方法登出。

rbs.signOut()

RBS代理

您可以将代理附加到RBS客户端。

rbs.delegate = self

开始接收身份验证状态变化。

extension ViewController : RBSClientDelegate {
    func rbsClient(client: RBS, authStatusChanged toStatus: RBSClientAuthStatus) {
        print("RBS authStatusChanged to \(toStatus)")
    }
}

发送操作

操作是独特的字符串,用于在RBS上调用处。以下是一个操作字符串的组成部分,每个部分之间用点分隔:

{公司}.{服务ID}.{动作类型}.{动作名称}

动作类型只能是“事件”或“请求”。

一些例子:

  • rtbs.oms.request.INSERT_ORDER
  • rtbs.oms.request.LIST_MY_ORDERS
  • rtbs.oms.event.ORDER_CREATED
  • rtbs.notification.request.SEND_SMS
  • somecompany.awesomeservice.request.DO_STUFF

您可以使用.send方法将操作发送给RBS服务。哪些操作会触发哪个服务是由您的RBS项目配置列出的。

rbs.send(action: "rbs.someservice.request.SOME_ACTION",
         data: [
            "key": "value",
         ],
         onSuccess: { result in
            print("Result: \(result)")
         },
         onError: { error in
            print("Error Result: \(error)")
         })

许可证

RBS在MIT许可证下提供。有关更多信息,请参阅LICENSE文件。