我尝试使用仅应用程序身份验证API对twitter API进行身份验证调用
NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:url]
cachePolicy:NSURLRequestReloadIgnoringLocalCacheData
timeoutInterval:20.0];
[request setHTTPMethod:@"POST"];
[request setValue:@"application/x-www-form-urlencoded;charset=UTF-8" forHTTPHeaderField:@"Content-Type"];
[request setValue:@"Some App Name" forHTTPHeaderField:@"User-Agent"];
[request setValue:authValue forHTTPHeaderField:@"Authorization"];
[request setHTTPBody:[@"grant_type=client_credentials" dataUsingEncoding:NSUTF8StringEncoding]];
有趣的是,authValue没有得到一套用于HTTPHeaderField @“授权”。因此,我的通话当然会失败。所有其他标题字段均已正确设置。
我检查通过
NSLog(@"Authorization, %@, %@", [request valueForHTTPHeaderField:@"Authorization"], authValue);
返回@“ Authorization,(null),theCorrectStuff
为什么会这样呢?我应该可以立即进行设置,还是我丢失了某些东西?
感谢您的时间和考虑,Fabian
我遇到过同样的问题。输出您的authValue,它可能包含新行。对于仅执行身份验证的应用程序,在执行base64之后,您需要从authValue中删除新行,否则将不会设置标头字段。
或仅将已编写的Objective-C库用于Twitter REST API 1.1(https://github.com/nst/STTwitter)。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句