ASPinboard 1.0.0

ASPinboard 1.0.0

测试已测试
Lang语言 Obj-CObjective C
许可证 Apache 2
发布上次发布2017年9月

Dan Loewenherz 维护。



  • Dan Loewenherz

ASPinboard是Pinboard的Objective-C库,为Pushpin提供动力。它使用现代Objective-C功能(如ARC和blocks),支持iOS 5.1+,并且很容易集成。截至2013年1月,ASPinboard已完全支持Pinboard API中的每个端点,除了posts/recent

入门

您首先想要做的是将ASPinboard目录中的文件添加到您的应用程序中。或者,您可以拖放Xcode项目到现有的应用程序中,并创建一个工作空间。这完全取决于您。

快速入门

ASPinboard使用Pinboard的身份验证令牌来访问受保护资源。您可以使用authenticateWithUsername:password:success:failure方法检索令牌。

void (^loginFailureBlock)(NSError *);
loginFailureBlock = ^(NSError *error) {
   if (error.code == PinboardErrorInvalidCredentials) {
       // An invalid username or password was provided.
   }
   else if (error.code == PinboardErrorTimeout) {
       // The authentication request will time out if
       // it takes longer than 20 seconds to respond.
   }
};

ASPinboard *pinboard = [ASPinboard sharedInstance];
[pinboard authenticateWithUsername:PINBOARD_USERNAME
                          password:PINBOARD_PASSWORD
                           success:^(NSString *token) {
                               NSLog(@"Your Pinboard API token is: %@", token);
                           }
                           failure:loginFailureBlock];

身份验证后,ASPinboard会将其内部存储的令牌用于未来的请求。

如果您想使用之前存储或从设置页面复制的令牌,请在使用ASPinboard请求受保护资源之前,在ASPinboard共享实例上使用setToken方法。

[pinboard setToken:token];

检索书签

现在您已经有了令牌,我们来抓取您的书签,好吗?

void (^successBlock)(NSArray *, NSDictionary *);
successBlock = ^(NSArray *bookmarks, NSDictionary *parameters) {
    NSLog(@"Here are your bookmarks:");
    for (id bookmark in bookmarks) {
        NSLog(@"url: %@", bookmark[@"href"]);
    }
};

void (^failureBlock)(NSError *);
failureBlock = ^(NSError *error) {
   if (error != nil) {
       NSLog(@"Houston, we have a problem.");
   }
};

[pinboard bookmarksWithSuccess:successBlock failure:failureBlock];

添加书签

[pinboard addBookmarkWithURL:@"https://pinboard.in/"
                       title:@"Pinboard"
                 description:@"A cool bookmarking site"
                        tags:@"bookmarking services"
                      shared:YES
                      unread:NO
                     success:^{}
                     failure:failureBlock];

此方法也可以用来更新现有的书签。更多详细信息,请参阅Pinboard文档中的posts/add

其他方法

请参阅ASPinboard.h以获取支持方法的全列表。

许可证

ASPinboard可在Apache许可证,版本2.0下使用。请查阅LICENSE获取更多详细信息。