iOS: 给服务器 twitter 访问权限?

iOS: give server twitter access?

我想让用户选择一个 Twitter 帐户并授权该应用程序,使用 Accounts.framework(希望只是 Fabric)来做一些事情。但是,我希望我的服务器真正做这件事:执行 twitter 调用(获取用户关注的所有人,我不知道,数一数)。

有什么办法吗?我认为这不像将我从 Fabric 登录返回的 authToken 传递到我的服务器那么容易...

您正在寻找 OAuth Echo:https://docs.fabric.io/ios/twitter/oauth-echo.html

您为特定端点生成服务器发出请求所需的 oauth headers:

TWTROAuthSigning *oauthSigning = [[TWTROAuthSigning alloc] initWithAuthConfig:[Twitter sharedInstance].authConfig authSession:[Twitter sharedInstance].session];
NSString *endpoint = @"https://api.twitter.com/1.1/friends/ids.json";
NSDictionary *parameters = @{
                             @"cursor": @"-1",
                             @"screen_name": username,
                             @"count": @"2000"
                             };
NSError *error;
NSDictionary *oauthHeaders = [oauthSigning OAuthEchoHeadersForRequestMethod:@"GET" URLString:endpoint parameters:parameters error:&error];

oauthHeaders 中的一个键是 "X-Verify-Credentials-Authorization",您需要在从服务器发出的请求中将其设置为授权 header。另一个键是 "X-Auth-Service-Provider",它是您应该向(您指定的端点)发出请求的 url - 它是 header 将在其上工作的唯一端点,并且它包含一个查询您传递给 OAuthEchoHeadersForRequestMethod.

的 GET 参数的字符串

方法 OAuthEchoHeadersForRequestMethod 没有很好的记录...感谢自动完成建议找到它。