Tin 0.0.1

Tin 0.0.1

测试已测试
语言语言 Obj-CObjective C
许可 MIT
发布日期最后发布2014年12月

Piet Jaspers维护。



 
依赖
JSONKit>= 0
AFNetworking~> 0.9.0
 

Tin 0.0.1

  • pjaspers

Tin 旨在使从 Cocoa 谈论 webservices 变得更为简洁。它使用 blocks 和优秀的 HTTP 库 ASIHttp 来使请求看起来更简单。

为什么?

我之前尝试的 API 一直使用很多代理,因为我们没有 blocks,而且在桌面应用程序中,同步请求绝对不是最佳选择。

现在有了 blocks,终于可以使其看起来像这样

[Tin get:@"http://apple.com" success:(TinResponse *response) {
  NSLog(@"Response: %@", response.response);
  NSLog(@"Headers: %@", response.headers);
}];

如何安装?

安装的最简单方法是将其克隆到项目中,并将 Tin 头文件和 Tin 子文件夹复制到您的自己的项目中。

Tin 有一个主要的依赖项,就是 ASIHttp,所以请确保已经安装了它。

使用方法

Tin 的使用方法有两种,最简单的方法是始终调用类方法(例如,[Tin get:...];),但缺点是无法使用实例方法提供的一些功能。

例如,如果您创建了

Tin *tin = [][Tin alloc] init];'
tin.baseURI = @"http://tin.com";

您可以这样进行请求:[tin get:@"/something/else" success:nil];,这将使请求路由到 http://tin.com/something/else。因此,如果您将此实例保留在方便的地方,可能会节省很多时间。

目前 Tin 支持以下方法

  • GET
  • POST
  • PUT

每个都具有传递数据的 querybody 参数。如果将 NSDictionary 传递给 query,它将转换为包含键和值的字符串。例如:

NSDictionray *dict = [NSDictionary dictionaryWithObjectsAndKeys:@"string", @"key", nil];
// would be converted to an NSString
@"key=string"

其他对象将通过调用 description 方法来获取它们的字符串表示形式,并将其传递给 ASI。

测试

通常,应该运行 rake test 以运行所有单元测试。目前,大多数测试仍依赖于网络连接正常,但我正在重构以使其消失(请参见 TinTest.m

我能帮忙吗?

当然可以!

对其进行分支操作!改进它!对其进行测试!重写它!(技术)