- 浏览: 1230870 次
- 性别:
- 来自: 上海
文章分类
最新评论
-
lankk:
lankk 写道事实上,在运行String s1=new St ...
理解String 及 String.intern() 在实际中的应用 -
lankk:
事实上,在运行String s1=new String(&qu ...
理解String 及 String.intern() 在实际中的应用 -
lankk:
同意1楼的说法http://docs.oracle.com/j ...
理解String 及 String.intern() 在实际中的应用 -
raoyutao:
...
jdk 线程池 ThreadPoolExecutor -
hongdanning:
理解了。之前困惑的一些明白了。谢谢分享。
理解String 及 String.intern() 在实际中的应用
最开始想做个twitter客户端玩玩,算是在实践中学习api
后来发现twitter原来是可以让开发者用 base64认证的方式去使用api的,结果现在不行了
必须使用oauth的方式, 但oauth方式下必须到twitter的页面上去点击确定,这还是本地app程序吗,太恶心了,
其实twitter也提供了xauth方式认证,可以省去oauth认证中去网站上点确定的那一步,但可是要使用这种认证必须
给twitter发邮件,说明一堆理由。。。
假如你的应用中只有一个用户使用,即twitter账户是固定的话(这在普通应用中集成twitter的情况下常见),可以使用预先取得的access token 来完成oauth认证,也不需要去和web交互
我用的是gtm-oauth库,直接copy代码到项目中,因为不知道怎么导入静态库,那位会,教下我 :)
http://code.google.com/p/gtm-oauth/wiki/GTMOAuthIntroduction
NSString *myConsumerKey = @"1111"; //这里是你的应用的key NSString *myConsumerSecret = @"2222"; // 这里是你的应用的secret GTMOAuthAuthentication *auth; auth = [[[GTMOAuthAuthentication alloc] initWithSignatureMethod:kGTMOAuthSignatureMethodHMAC_SHA1 consumerKey:myConsumerKey privateKey:myConsumerSecret] autorelease]; // setting the service name lets us inspect the auth object later to know // what service it is for auth.scope=@"http://api.twitter.com/"; auth.serviceProvider = @"Twitter"; auth.accessToken = @"33-33"; //这里是你自己个人的accesstoken auth.signatureMethod = @"HMAC-SHA1"; auth.shouldUseParamsToAuthorize =NO; auth.tokenSecret=@"4444A"; //这里是你自己个人的accesstokensecret
上面的代码是在拼一个GTMOAuthAuthentication对象,有了这个对象你就可以给你的request添加认证信息
接下来是调用api访问用户自己的信息, get
NSURL *requestURL = [NSURL URLWithString:@"http://api.twitter.com/1/account/verify_credentials.json"]; NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:requestURL]; [auth authorizeRequest:request]; //认证请求 GTMHTTPFetcher *fetcher = [GTMHTTPFetcher fetcherWithRequest:request]; [fetcher beginFetchWithDelegate:self didFinishSelector:@selector(myFetcher:finishedWithData:error:)]; [UIApplication sharedApplication].networkActivityIndicatorVisible=YES; - (void)myFetcher:(GTMHTTPFetcher *)fetcher finishedWithData:(NSData *)retrievedData error:(NSError *)error{ [UIApplication sharedApplication].networkActivityIndicatorVisible=NO; if(error){ NSLog(@"%@",error); }else{ NSString* aStr = [[NSString alloc] initWithData:retrievedData encoding:NSASCIIStringEncoding]; NSLog(@"%@",aStr); } }
下面是post请求发推
NSURL *requestURL = [NSURL URLWithString:@"http://api.twitter.com/1/statuses/update.json"]; NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:requestURL]; NSString *post = [NSString stringWithFormat:@"status=this tweet is by objective-c code in xcode at %@",[[[[NSDate alloc] init] autorelease] description] ]; NSData *postData = [post dataUsingEncoding:NSASCIIStringEncoding allowLossyConversion:YES]; NSString *postLength = [NSString stringWithFormat:@"%d", [postData length]]; [request setHTTPMethod:@"POST"]; [request setValue:postLength forHTTPHeaderField:@"Content-Length"]; [request setValue:@"application/x-www-form-urlencoded" forHTTPHeaderField:@"Content-Type"]; [request setHTTPBody:postData]; [auth authorizeRequest:request]; GTMHTTPFetcher *fetcher = [GTMHTTPFetcher fetcherWithRequest:request]; [fetcher beginFetchWithDelegate:self didFinishSelector:@selector(myFetcher:finishedWithData:error:)]; [UIApplication sharedApplication].networkActivityIndicatorVisible=YES;
发表评论
-
手动编程 NSLayoutConstraint
2017-08-09 23:51 679项目中有个admob view是后期加上的 没写在st ... -
iOS autolayout 下 键盘 遮挡 处理 keyboard handler move up
2017-08-09 23:41 807在ios 中 由于键盘出现后会遮挡屏幕下面区域, ... -
iOS 开发一年多总结下
2012-12-19 16:47 1873收获很多 1. 一个人包办从构思, 设计, 实现, ... -
libxml2 xpath 解析含有 prefix namespace 的 xml
2012-11-06 13:28 3501有一段xml 里面有 prefix URL namespac ... -
iOS 6 设备转向问题
2012-09-21 00:33 3643iOS 6 对设备转向时 View Rotations 的处理 ... -
ios5 支持 json 转化
2011-10-29 21:58 7446------ 解析json成dic对象 - ... -
Quartz 2D (ProgrammingWithQuartz) note
2011-10-09 20:03 3021http://www.evernote.com/shard/s ... -
ios 添加字体
2011-10-09 19:09 2107<!--?xml version="1.0&q ... -
MBProgressHUD 画不出来解决办法
2011-09-02 14:34 2238- (void)tableView:(UITabl ... -
ios googlemap 添加map overlay
2011-09-02 14:32 2880画线 CLLocationCo ... -
ios 系统相关
2011-09-02 14:28 1516判断当前设备 是否ipad #define ... -
ios 5 才执行的代码
2011-09-02 13:03 1290设置navigationBar背景在ios5有了官方支持 ... -
UIPopoverController 相关问题
2011-09-02 12:57 1575Popover + tableView 的宽度问题 ... -
Settings 设置问题
2011-09-02 12:05 10481. setting面板的设置只有当用户去了设置面 ... -
ios 国际化相关
2011-09-02 12:04 1783添加国际化 1. 代码中使用字符串的地方 使 ... -
UITableView 相关问题
2011-09-02 11:53 1927动态调整cell高度 - (UITable ... -
提取ipa png 图标
2011-08-10 11:19 6260Apple 对 iPhone 应用程序中的 png 图片进 ... -
个人申请 idp
2011-07-19 15:15 1756要准备的东西 一张双币信用卡(扣$99用) 一张可以接受外汇 ... -
本人第一款ios app上架了
2011-07-19 12:26 1531第一次开发ios app, 希望大家多多支持, 多多下载, ... -
MKPointAnnotation 导致的内存泄露
2011-07-11 21:59 1553程序是在一个map 上添加annotation, 添加的时候有 ...
相关推荐
Swift开发中的OAuthSwift库是一个强大的工具,专门设计用于在iOS应用程序中处理OAuth认证流程。OAuth是一种授权框架,允许第三方应用在用户许可的情况下访问特定服务提供商的数据,如社交媒体平台或云存储服务,而...
### 关于《初学者指南:使用Facebook与Twitter API开发iOS应用》 本书旨在教导开发者如何将他们的iOS应用程序(包括游戏)连接到最流行的社交网络站点——Facebook和Twitter。作者Chris Dannen与Christopher White...
在iOS开发领域,Twitter开放API的应用是一个常见的学习和实践课题,尤其对于毕业设计或论文撰写而言,这样的项目能帮助开发者深入理解网络通信、API接口调用以及数据解析等关键技术。"IOS源码应用Demo-twitter开放...
Swift-SwiftyOAuth是一个专为iOS应用程序设计的轻量级OAuth库,旨在简化OAuth认证流程。这个库的主要目的是帮助开发者轻松地与支持OAuth协议的服务进行交互,如Twitter、Facebook、Google等。OAuth是一种授权框架,...
OAuthConsumer是一个常用的库,用于处理OAuth认证流程,它在iOS应用与Twitter服务之间建立起安全的数据交换通道。本篇文章将深入讲解如何在iOS项目中集成OAuthConsumer库,创建一个能与Twitter交互的应用——...
1. **简化集成**:OAuth.IO 提供了一个简单的API,使得开发者可以快速集成各种OAuth服务,如Facebook、Twitter、Google等,而不必处理每个服务的特定实现。 2. **跨平台兼容**:OAuth.IO 支持多种平台,包括Web、...
1. **OAuth认证**:了解如何通过Twitter的OAuth机制进行身份验证,以便在应用中代表用户发送和接收推文。 2. **JSON解析**:理解如何解析API返回的JSON数据,并将其转化为Swift对象。 3. **SwiftUI或UIKit**:熟悉...
这涉及到OAuth认证流程,确保应用能够安全地代表用户与Twitter服务器进行交互。开发者需要设置Twitter开发者账户,并获取到必要的API密钥和访问令牌。 此外,iOS应用中的网络请求通常使用URLSession或者第三方库如...
4. "第三方twitter客户端.zip":这是另一个社交应用,可能是一个非官方的Twitter客户端,开发者可以从中学习如何使用OAuth进行身份验证,以及如何显示和发送推文。 5. "SBAMobile.zip":这个名称可能是“SBA Mobile...
6. **多平台支持**:一个完整的社区分享工具应该支持多种社交平台,比如微信、微博、QQ、Facebook、Twitter等。这样用户可以根据自己的偏好选择分享渠道。 7. **性能优化**:为了提供流畅的用户体验,开发者需要...
OAuth允许应用在不获取用户密码的情况下,安全地访问用户的受保护资源,例如Twitter、Facebook等社交媒体的数据。下面我们将深入探讨OAuthConsumer的源码,以及它如何在iOS开发中实现OAuth流程。 OAuth协议主要分为...
7. **Authentication**:登录功能是必不可少的,开发者可能使用OAuth或者Twitter的SDK来处理用户认证。 8. **Notification**:为了实时更新推文,应用可能使用iOS的通知服务,当有新消息时通知用户。 9. **GCD ...
3. **Twitter API集成**:游戏与Twitter的结合,意味着源码中会包含对Twitter API的调用,这涉及到OAuth认证、HTTP请求发送、JSON数据解析等内容。开发者可能使用AFNetworking或其他第三方库来简化网络请求处理。 4...
入门 安装 如果您使用的是Xcode 6及更高版本,只需将Swifter Xcode项目拖到您自己的项目...// Instantiation using Twitter's OAuth Consumer Key and secret swifter = Swifter ( consumerKey : TWITTER_CONSUMER_KEY,
简单的oauth1使用OAuth 1.0a服务提供商进行身份验证的简单代码为具有块和ARC的iOS 6构建。 AFNetworking( )提供了一些很棒的方法来处理url参数,该方法已在项目中使用。 还使用了OAuthConsumer( )的一种不错的...
在这个项目中,我们可能看到的是Objective-C编写的基础架构,因为它是早期iOS开发的主流语言,且对于Twitter和微博类的应用,Objective-C有丰富的第三方库支持。 1. **OAuth授权机制**:接入微博API时,开发者需要...
打开 Safari 或者使用 UIWebView 实例,执行 Twitter 验证操作然后通过一个定制的 UEL scheme 在你的 app 中直接接收 OAuth access token 使用 Application Only 验证,获取并使用 “bearer ...
除此之外,如果项目涉及到用户登录、社交分享等功能,可能使用了OAuth、Facebook SDK或Twitter API等。如果包含游戏元素,那么可能用到了SpriteKit或GameplayKit等游戏开发框架。 最后,源码中的Podfile或Carthage...