登录 Twitter 后如何获取 oauth 令牌?

2024-01-31

登录 Twitter 后,我可以打印一些有用的数据,例如用户名和用户 ID。但是,OAuth 令牌始终为空。我怎样才能得到它?我需要将 OAuth 令牌发送到我的服务器,以便它可以验证用户确实是他所说的人。

ACAccountStore* accountStore = [[ACAccountStore alloc] init];
ACAccountType* twitterType = [self.context.accountStore accountTypeWithAccountTypeIdentifier:ACAccountTypeIdentifierTwitter];
[accountStore
    requestAccessToAccountsWithType:twitterType
    withCompletionHandler:^(BOOL isAllowed, NSError* error) {
        dispatch_sync(dispatch_get_main_queue(), ^(void) {
            if (isAllowed) {
                ACAccount* account = [[self.context.accountStore accountsWithAccountType:[self.context.accountStore accountTypeWithAccountTypeIdentifier:ACAccountTypeIdentifierTwitter]] lastObject];
                NSLog(@"username = %@", account.username);
                NSLog(@"user_id = %@", [[account valueForKey:@"properties"] valueForKey:@"user_id"]);
                // ouath token is always null
                NSLog(@"oauth token = %@", account.credential.oauthToken);
            }
        });
    }
];

I "think“ 我需要反向验证 https://dev.twitter.com/docs/ios/using-reverse-auth,但该教程神秘地遗漏了“步骤 1”的代码。


您确实需要使用反向验证。

我最近用过肖恩·库克的 TWReverseAuth https://github.com/seancook/TWReverseAuthExample效果非常好。只是要小心关闭 ARC 中的各个文件Vendor目录。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

登录 Twitter 后如何获取 oauth 令牌? 的相关文章

  • 志愿者匹配 API Objective C

    我正在使用 AFNetworking 对 VolunteerMatch API 执行 Web 请求 当我执行请求时 我收到 200 代码 但没有收到响应 典型的 VolunteerMatch 请求如下所示 GET api call acti
  • 以编程方式访问 Apple Notes 内容

    是否可以以编程方式访问Apple Notes 即macos和ios中预装的应用程序 内容 macOS 上的 Notes 可使用 AppleScript 编写脚本 要注销所有笔记 请打开脚本编辑器并使用以下内容创建一个新脚本 然后单击播放按钮
  • 防止 Realm 在更新对象时覆盖属性

    我已经在 iOS 中设置了一个 REST API 来连接领域对象 然而 我发现在我的对象中创建最喜欢的标志存在问题 我创建了一个最喜欢的布尔值 但是每次从 API 更新该对象时 它都会再次将最喜欢的值设置为默认 false 在这里 我希望这
  • 强制变量声明的协议 - Objective C

    是否可以在 protocol中声明变量 只是为了强制程序员在实现类 实现此协议的类 标头和实现中添加这些变量 Thanks 简短回答 不 不可能那样做 您最多可以强制方法和属性的可用性
  • Twitter api 对于已删除的推文总是给出“抱歉,该页面不存在”错误

    我正在使用 twitter api 和 OAuth 当我尝试检查使用此 API 发送的推文时 如果推文存在 则 API 工作正常 但如果我删除了通过 API 发布的推文 推文检查响应总是给我 message gt Sorry that pa
  • 在启用 Bitcode 的情况下导出时出错(未找到架构 armv7 的符号)

    我有一个相当老的项目 其最低部署目标设置为 iOS 8 4 由于技术原因位码must被启用 该项目构建并运行良好 然而 当尝试导出存档的版本时 就会出现问题 我使用的是 Xcode 8 2 1 当我使用以下选项创建测试版本 使用企业证书签名
  • Dropbox iOS SDK 始终为 isLinked 返回“YES”:

    我正在使用 iOS Dropbox SDK 想要检查我的应用程序是否已与 Dropbox 帐户链接 所以我这样做 if self isLinked NSLog linked However self isLinked总是返回YES 即使在清
  • Three20 和 iOS 6 不工作

    我刚刚尝试了我的一个项目 其中包含 Three20 但它似乎无法编译 给我构建错误 似乎是因为一些 UITouch 界面发生了变化 想知道是否有快速修复方法可以做到这一点 看来问题是在这里 UITouch ivars 已从 iOS 6 SD
  • 转换任何对象?到字符串

    我有一个返回 AnyObject 的函数 func aFunction param String gt AnyObject 如何将其转换为字符串 和字符串 尝试这个 if let result aFunction test as Strin
  • 如果我在新证书上续订我的配置文件(企业分发方法),我的应用程序是否会停止?

    我有一个通过企业分发方法发布的应用程序 分发证书将在一个月后过期 因此我创建了一个新证书 此外 我还根据具有相同捆绑 ID 和应用 ID 的新证书更新了配置文件 旧的配置文件将像旧证书一样在 1 个月后过期 我的应用程序是通过此配置文件和证
  • 如何在 UIView 中获取父导航控制器

    我创建了一个UITabBarController在我的应用程序委托中 其中每个选项卡栏项目都有不同的UINavigationController加载自定义的UIViewController带NIB 使用 pushViewController
  • iOS Swift 多维数组 - 编译需要很长时间。我应该改变什么?

    我是斯威夫特的新人 以前从未使用过 ObjC 编程 我在使用 iOS 应用程序时遇到了问题 通过选择器查询数组非常简单 我有 4 个多维数组 如下所示 let Setting 0 0 0 0 0 0 2230 0 0 0 0 0 2230
  • 如何在 iOS 中以编程方式在 UITableViewCells 中添加图像

    我需要添加不同的图像UITableViewCells以编程方式 我怎样才能做到这一点 我正在尝试一些代码 但图像不显示在UITableViewCells 这是我下面的代码 void viewDidLoad arrImages NSMutab
  • 从iOS iphone中相机返回的图像中读取GPS数据

    我需要获取使用 iOS 设备相机拍摄的图像的 GPS 坐标 我不关心相机胶卷图像 只关心使用 UIImagePickerController SourceType Camera 拍摄的图像 我读过很多 stackoverflow 答案 比如
  • 使用 cordova 工具集构建应用程序时出错

    我正在使用 Visual Studio 2017 社区版 并且只需使用 vs 文档中的步骤即可使用 macincloud 服务进行远程构建 我基本上遇到了以下明确的错误 来自构建服务器的远程构建错误https xxxx macincloud
  • 错误 ITMS-90596:“捆绑包无效。无法处理“Payload/ExpoKitApp.app/.bundle/Assets.car”处的资产目录。”

    问题摘要 我想向Apple App store TestFlight 提交一个应用程序 我正在使用 Transporter v1 1 提交应用程序 在提交过程中 我在 Transporter 中收到以下错误 请注意 我在此过程中没有使用 X
  • WKWebView 在 iOS 10 及以上版本中不加载 http 图像

    我正在加载一个https URL in WKWebView里面很少有图像来自HTTP启用后加载完美的 URLNSAllowsArbitraryLoads in info plist文件在 iOS 9 中 但在 iOS 10 及更高版本上它不
  • 如何使用 UIScrollView?

    我该如何使用UIScrollView 请给我一个带有一张滚动图像的简单示例 这将使您深入了解UIScrollView控制 学习 UIScrollView 的基础知识 https stackoverflow com questions 159
  • iOS HTTP 请求在后台运行

    当应用程序处于后台时 可以向 PHP 服务器发出 HTTP 异步请求吗 该应用程序是基于位置的应用程序 应收集当前位置并每 5 或其他值 分钟将坐标发送到服务器 即使应用程序处于后台 我也可以将 http 帖子发送到服务器吗 我读到了很多关
  • 类型铸造自我

    以下自我转换对 ClassA 有何作用 这种种姓可以让你进入ClassA吗 A h类 interface ClassA NSObject NSUInteger someNumber ClassB classB property nonato

随机推荐

  • 使用 R Shiny 将(多个)值添加到数据框

    我将 R闪亮与 ggplot 结合使用来可视化某个数据集 我希望用户能够向该数据集添加值 我可以让我的应用程序向我显示原始数据 一个数据点 但是一旦用户输入一个新点 旧的数据点就消失了 用户输入的数据实际上并未存储在我的数据框中 我正在使用
  • Android WebView加载GoogleMap数据渲染

    我正在尝试使用以下函数在 WebView 中显示 div String baseUrl String mimeType text html String encoding UTF 8 html sb toString String hist
  • 有人可以向我解释“卫生”的概念吗(我是一名方案程序员)?

    所以 我是 r6rs 方案的新手 正在学习宏 谁能给我解释一下 卫生 是什么意思 提前致谢 卫生经常在宏的上下文中使用 卫生宏不使用可能会干扰正在扩展的代码的变量名称 这是一个例子 假设我们想要定义or带有宏的特殊形式 直观地说 or a
  • 通过 os.system 推送 [重复]

    这个问题在这里已经有答案了 我正在使用 crontab 为我的 Minecraft 服务器运行维护脚本 大多数时候它工作正常 除非 crontab 尝试使用重新启动脚本 如果我手动运行重新启动脚本 则不会有任何问题 因为我相信它与路径名有关
  • Android:在非 root 设备上运行脚本

    我可以在非 root 设备上运行二进制可执行文件或脚本 bash 文件吗 我有一个像这样的小脚本 helloworld sh echo hello world 我把它保存在 sdcard并尝试跑步 但我得到了 没有权限 我研究过 原因是执行
  • 将数组short转换为char的最快方法

    我每秒必须处理大约 2000 100 个元素数组 这些数组对我来说是短裤 其中的数据位于高位 需要移位并转换为字符 这是我能得到的最有效的方法 还是有更快的方法来执行此操作 我必须跳过其中 2 个值 for int i 0 i lt 48
  • 流式下载大文件,Python 请求中断

    我在 python requests v 2 0 1 中流式下载大文件 约 1 5 GB 时遇到问题 with open saved rar wb as file r session get url stream True timeout
  • “反向”统计:根据平均值和标准差生成数据

    拥有数据集并从中计算统计数据很容易 反过来又如何呢 假设我知道某个变量具有平均值 X 标准差 Y 并假设它具有正态 高斯 分布 生成适合分布的 随机 数据集 任意大小 的最佳方法是什么 编辑 这种发展自这个问题 https stackove
  • 使用 std::function 进行隐式转换[重复]

    这个问题在这里已经有答案了 可能的重复 为什么我的 C 编译器无法推导出 boost 函数的模板参数 https stackoverflow com questions 5871044 why cant my c compiler dedu
  • 如何使用 git repack -a -d --深度=250 --window=250

    我见过git gc aggressive prune and git repack a d depth 250 window 250建议用于减小不需要较长本地历史记录的本地 git 文件夹的大小 从我的阅读看来git repack是首选 有
  • 在maven多模块包中创建JAR文件作为聚合

    我有以下架构 现在 如果我正在创建父子关系并首先构建子项 然后构建父项 那么它会正常工作
  • 如何从 Java 9 中的另一个模块获取 ResourceBundle?

    我有两个模块 模块 a 和模块 b 模块 a 具有属性文件 com foo texts en properties 模块 a 导出com foo包裹 在 module b 中我想获取这个资源 为此 我在 module b 中执行以下操作 M
  • 仅使某一部分可滚动,而不是整个页面

    我正在开发一个项目 其中一个部分通过从数据库请求数据来填充元素 因此其中的元素数量变化很大 棘手的部分是 我们的设计基于这样的想法 不必在页面上滚动 而是在必要时在部分上滚动 我想用overflow在这些部分就足够了 但它没有给我预期的结果
  • 分割视图控制器不作为根视图控制器

    我有一个应用程序需要用户LOG IN 用户登录后 我想使用分割视图控制器来显示数据 诀窍是 苹果不希望我推动SplitViewController 因为他们希望它成为根视图控制器 从我的角度来看 这是可以的 但我需要用户先登录 任何人都知道
  • 如何在 QtCreator 中重命名文件 .h .cpp

    如何在QtCreator中重命名源文件 我已经更改了类的名称 但我没有看到更改它包含的文件的选项 我使用的是2 7 0版本 如果您使用 qmake 重命名很容易 在 项目 左侧面板中找到您的文件 然后在上下文菜单中选择 重命名 Qt Cre
  • Visual Studio 在字符类中查找并替换右方括号 ]

    我想创建一个否定字符类来匹配像这样的方括号标签 方括号标签 问题是 字符结束了字符类 I tried 但当我运行它时出现语法错误 这是在查找和替换正则表达式引擎中 它与标准 NET 引擎略有不同 仅供参考 您忘记转义最后的结束括号
  • 使用奇怪的命名空间序列化 XML?

    问题 用于序列化此 XML 内容的类看起来如何
  • 导航栏大标题到小标题切换不流畅 iOS 13,粘性

    我有一个UINavigationController默认值为navigationBar prefersLargeTitles true 我将其切换为false when I push进入一个新场景 我们称之为 DetailsViewCont
  • 为什么使用 DFS 而不是 BFS 来查找图中的循环

    DFS 主要用于查找图中的循环 而不是 BFS 有什么理由吗 两者都可以查找节点是否已经存在 遍历树 图时访问过 深度优先搜索比广度优先搜索更节省内存 因为您可以更快地回溯 如果使用调用堆栈 实现起来也更容易 但这依赖于不会溢出堆栈的最长路
  • 登录 Twitter 后如何获取 oauth 令牌?

    登录 Twitter 后 我可以打印一些有用的数据 例如用户名和用户 ID 但是 OAuth 令牌始终为空 我怎样才能得到它 我需要将 OAuth 令牌发送到我的服务器 以便它可以验证用户确实是他所说的人 ACAccountStore ac