测试测试 | ✓ |
Lang语言 | Obj-CObjective C |
许可 | MIT |
Released最新发布 | 2018年5月 |
由 Anton Kononenko 维护。
SHMKit 是适用于 iOS 的 Siren 超媒体库。它将使您能够轻松地执行操作和导航 Siren API。
只需将 SHMKit 项目拖放到您的 iOS 项目中。我最终会创建一个更整洁的库。
这代表 API 入口点。在这里,您将使用根 URL 初始化解析器对象,并相应地遍历 API。
初始化 siren 根。端点参数应该是您 API 的入口点。最好将其放置在 App Delegate 中。
-(id) initWithSirenRoot:(NSString*)endpoint;
异步检索您的 API 的根。传递一个块以获取您的 API 的第一个实体。
-(void) retrieveRoot:(void (^)(NSError *err, SHMEntity* entity))block;
表示 Siren 实体。
使用 NSData 类初始化一个新的 Siren 实体。这对于直接向 API 发送 HTTP 请求的情况非常适合。
-(id) initWithData:(NSData *)data;
使用字典初始化 Siren 实体。如果您想自行解析,或在使用 NSDictionary 构造 Siren 实体,请使用此方法。
-(id) initWithDictionary:(NSDictionary *)json;
异步步骤以链接关系匹配当前实体。如果没有提供的链接关系,则作为块的第一个参数返回错误。
-(void) stepToLinkRel:(NSString *)linkRel withCompletion:(void (^)(NSError *error, SHMEntity *entity))block;
从实体中获取特定的 Siren 动作。如果没有与特定名称相关联的动作,则返回 nil。
-(SHMAction *) getSirenAction:(NSString *)name;
表示一个Siren链接关系。
使用字典初始化一个链接关系对象。这是为了对Siren实体进行后解析。内部使用。
-(id)initWithDictionary:(NSDictionary*)data;
表示一个Siren动作。
使用字典初始化一个动作对象。这是为了对Siren实体进行后解析。内部使用。
-(id)initWithDictionary:(NSDictionary *)data;
执行带有特定参数的动作。如果没有传入参数,传递nil。动作异步执行,因此需要阻塞以获取API的下一步。
-(void)performActionWithFields:(NSDictionary *)fields andCompletion:(void (^)(NSError *, SHMEntity *))block;
不使用参数执行动作。动作异步执行,因此需要阻塞以获取API的下一步。
-(void)performActionWithCompletion:(void (^)(NSError *, SHMEntity *))block;
表示Siren动作中的单个字段。
仅内部使用的常量。
仅内部使用的帮助类。
仅内部使用的帮助类。
测试是用XCTest框架编写的。简单地下载后打开项目的测试标签并运行测试。它们目前都通过了。
版权所有 2014 年 Matthew Dobson 等贡献者
任何人免费获得本软件和相关的文档文件(“软件”)的副本(以下简称“软件”),均可不受限制地在软件中进行处理,包括但不限于使用、复制、修改、合并、发布、分发、再许可和/或销售软件的副本,并允许向软件提供的人士以任何方式使用此类软件,受以下条件约束:
上述版权声明和本许可声明应包含在软件的所有副本或大部分副本中。
软件按“现状”提供,无论明示或暗示,不包括任何形式的保证,包括但不限于适销性、针对特定目的的适应性以及不侵权的保证。在任何情况下,作者或版权所有者均不对任何索赔、损害或其他责任负责,无论这些索赔、损害或其他责任是由于合同、侵权或其他方式引起的,与软件或软件的使用或其他交易有关。