RBS
示例
要运行示例项目,请首先克隆仓库,然后从示例目录运行pod install
命令。
RBS介绍
RBS可以被开发者用来构建基于事件的系统。您应先创建一个RBS账户和一个RBS项目。
要求
您需要有一个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文件。