NLRMashapeClient Mashape API 调用开源项目

我要开发同款
匿名用户2014年12月09日
45阅读
所属分类Objective-C、iOS代码库、其他(Others)
授权协议MIT

作品详情

NLRMashapeClient基于AFNetworking构建,NLRMashapeClient提供简单和方便的形式来调用你在Mashape选择的APIs。

用法以“UltimateWeatherForecasts”为例,这是一个免费的返回天气状况的API。登录到Mashape并拥有至少一个应用程序后,将为MashapeKey每个应用程序获得一个,以提出对此应用程序的请求。

首先,创建NLRMashapeClient的子类,并声明单例方法,如下所示。

#import"NLRMashapeClient.h"@interfaceWeatherClient:NLRMashapeClient+(instancetype)sharedClient;@end现在,应该使用正确的API名称和MashapeAppKey实现单例方法。API名称是URL中位于之前的部分.p.mashape.com。例如,如果天气API的基本网址为https://george-vustrey-weather.p.mashape.com,则应使用george-vustrey-weather。可以从Mashape的应用程序页面中获取应用程序密钥,然后按“获取密钥”按钮。

#import"WeatherClient.h"@implementationWeatherClient+(instancetype)sharedClient{staticdispatch_once_tonce;staticidsharedInstance;dispatch_once(&once,^{sharedInstance=[[selfalloc]initWithAPIName:@"george-vustrey-weather"mashapeAppKey:@"THE-KEY-FOR-YOUR-APP"];});returnsharedInstance;}@end对于将使用的每个MashapeAPI,应该使用的一个子类/单个子类NLRMashapeClient。

正确初始化客户端后,就可以完成配置,并且可以进行任意数量的调用,而无需设置标题,键,而仅需注意:端点和参数!

例如,如果示例GET为https://george-vustrey-weather.p.mashape.com/api.php,而参数为location,则只需调用:

[[WeatherClientsharedClient]]GET:@"api.php"parameters:@{@"location":@"TelAviv"}success:^(NSURLSessionDataTask*task,idresponseObject){NSLog(@"%@",responseObject);}failure:^(NSURLSessionDataTask*task,NSError*error){NSLog(@"%@",error);}];对于单个调用,Mashape提供的Objective-C示例要简单得多。

如果想更多地玩这个游戏,可以使用示例项目(它需要CocoaPods并在运行podinstall之前运行)。

声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态

评论