- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我在我的应用程序中成功添加了 SA_OAuthTwitterEngine
,但我遇到了一个非常奇怪的问题。当我登录 Twitter 时,我的应用程序将崩溃:
- (void) OAuthTwitterController: (SA_OAuthTwitterController *) controller authenticatedWithUsername: (NSString *) username
{
[_engine sendUpdate:[NSString stringWithFormat:@"This Tweet for testing!"]];
NSLog(@"Authenicated for %@", username);
}
应用程序在 [_engine sendUpdate:[NSString stringWithFormat:@"This Tweet for testing!"]];
时崩溃。如果我使用 [_engine sendUpdate:nil];
代替,那么它将正常工作而不会崩溃,但无法从我的帐户发送推文。
当我尝试跟踪 sendUpdate
方法时,我在 [theRequest prepare];
以下函数中的语句中遇到了实际问题,
- (NSString *)_sendRequestWithMethod:(NSString *)method path:(NSString *)path queryParameters:(NSDictionary *)params body:(NSString *)body requestType:(MGTwitterRequestType)requestType responseType:(MGTwitterResponseType)responseType
{
NSString *fullPath = path;
NSString *urlString = [NSString stringWithFormat:@"%@://%@/%@", (_secureConnection) ? @"https" : @"http", _APIDomain, fullPath];
NSURL *finalURL = [NSURL URLWithString:urlString];
if (!finalURL) {
return nil;
}
OAMutableURLRequest *theRequest = [[OAMutableURLRequest alloc] initWithURL:finalURL consumer:self.consumer token:_accessToken realm: nil signatureProvider:nil];
if (method) {
[theRequest setHTTPMethod:method];
}
[theRequest setHTTPShouldHandleCookies:NO];
// Set headers for client information, for tracking purposes at Twitter.
[theRequest setValue:_clientName forHTTPHeaderField:@"X-Twitter-Client"];
[theRequest setValue:_clientVersion forHTTPHeaderField:@"X-Twitter-Client-Version"];
[theRequest setValue:_clientURL forHTTPHeaderField:@"X-Twitter-Client-URL"];
// Set the request body if this is a POST request.
BOOL isPOST = (method && [method isEqualToString:@"POST"]);
if (isPOST) {
// Set request body, if specified (hopefully so), with 'source' parameter if appropriate.
NSString *finalBody = @"";
if (body) {
finalBody = [finalBody stringByAppendingString:body];
}
if (_clientSourceToken) {
finalBody = [finalBody stringByAppendingString:[NSString stringWithFormat:@"%@source=%@", (body) ? @"&" : @"?" , _clientSourceToken]];
}
if (finalBody) {
[theRequest setHTTPBody:[finalBody dataUsingEncoding:NSUTF8StringEncoding]];
}
}
[theRequest prepare];
// Create a connection using this request, with the default timeout and caching policy,
// and appropriate Twitter request and response types for parsing and error reporting.
MGTwitterHTTPURLConnection *connection;
connection = [[MGTwitterHTTPURLConnection alloc] initWithRequest:theRequest delegate:self requestType:requestType responseType:responseType];
if (!connection) {
return nil;
} else {
[_connections setObject:connection forKey:[connection identifier]];
}
return [connection identifier];
}
崩溃报告是,
0 0x01f023ef in CFRelease ()
1 0x0008d04c in -[OAMutableURLRequest URLEncodedString:] (self=0x7bc673b0, _cmd=0x9ee5f, string=0x0) at /Users/ben/Dropbox/Dev/External Projects/Twitter-OAuth-iPhone/OAuthConsumeriPhoneLib/OAuthConsumerSrc/OAMutableURLRequest.m:287
2 0x0008bbe3 in -[OAMutableURLRequest prepare] (self=0x7bc673b0, _cmd=0x978cc) at /Users/ben/Dropbox/Dev/External Projects/Twitter-OAuth-iPhone/OAuthConsumeriPhoneLib/OAuthConsumerSrc/OAMutableURLRequest.m:131
3 0x00088460 in -[SA_OAuthTwitterEngine _sendRequestWithMethod:path:queryParameters:body:requestType:responseType:] (_cmd=0x96833, method=0xc0250, body=0x7b971210, requestType=<value temporarily unavailable, due to optimizations>) at SA_OAuthTwitterEngine.m:315
4 0x0007f673 in -[MGTwitterEngine sendUpdate:inReplyTo:] (self=<value temporarily unavailable, due to optimizations>, _cmd=0x96914, updateID=2073243024) at MGTwitterEngine.m:1019
5 0x0007f496 in -[MGTwitterEngine sendUpdate:] (self=0x7b932d90, _cmd=0x95e02, status=0xc0510) at MGTwitterEngine.m:995
6 0x0007bf3f in -[DMUAppDelegate OAuthTwitterController:authenticatedWithUsername:] (self=0x7b918a20, _cmd=0x96152) at DMUAppDelegate.m:572
7 0x0008503b in -[SA_OAuthTwitterController gotPin:] (_cmd=0x975b4, pin=0x7ae573e0) at SA_OAuthTwitterController.m:125
8 0x00086137 in -[SA_OAuthTwitterController webViewDidFinishLoad:] (self=0x7b944a00, _cmd=0xf070e2, webView=0x7ae46750) at SA_OAuthTwitterController.m:224
9 0x00be036a in -[UIWebView webView:didFinishLoadForFrame:] ()
10 0x00be1956 in -[UIWebViewWebViewDelegate webView:didFinishLoadForFrame:] ()
11 0x01f5c51d in __invoking___ ()
12 0x01f5c437 in -[NSInvocation invoke] ()
13 0x01f8749a in -[NSInvocation invokeWithTarget:] ()
14 0x03462aff in -[_WebSafeForwarder forwardInvocation:] ()
15 0x01f5d0c9 in ___forwarding___ ()
16 0x01f5cce2 in __forwarding_prep_0___ ()
17 0x01f5c51d in __invoking___ ()
18 0x01f5c437 in -[NSInvocation invoke] ()
19 0x04005ae3 in SendMessage ()
20 0x04006115 in HandleDelegateSource ()
21 0x01fca97f in __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ ()
22 0x01f2db73 in __CFRunLoopDoSources0 ()
23 0x01f2d454 in __CFRunLoopRun ()
24 0x01f2cdb4 in CFRunLoopRunSpecific ()
25 0x01f2cccb in CFRunLoopRunInMode ()
26 0x01e60879 in GSEventRunModal ()
27 0x01e6093e in GSEventRun ()
28 0x00a29a9b in UIApplicationMain ()
29 0x00040296 in main (argc=1, argv=0xc003c604) at /Users/dhirenshah/Desktop/Projects/Projects/DMU/DMU/main.m:16
(gdb)
最佳答案
是的,我终于解决了我的问题。我只是替换代码,
- (SA_OAuthTwitterEngine *) initOAuthWithDelegate: (NSObject *) delegate
{
if (self = (id) [super initWithDelegate: delegate]) {
self.requestTokenURL = [NSURL URLWithString: @"https://twitter.com/oauth/request_token"];
self.accessTokenURL = [NSURL URLWithString: @"https://twitter.com/oauth/access_token"];
self.authorizeURL = [NSURL URLWithString: @"https://twitter.com/oauth/authorize"];
}
return self;
}
修改SA_OAuthTwitterEngine.m函数。我从 MGTwitterEngine crash in iOS5 得到了帮助, 这个链接。
关于iphone - Twitter 引擎 SA_OAuthTwitterEngine 集成?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10650238/
Windows 集成 (NTLM) 身份验证和 Windows 集成 (Kerberos) 之间有什么区别? 如何在IIS6中实现这些 w.r.t. MSDN 最佳答案 Kerberos 和 NTLM
Keycloak是一个用 Java 编写的开源身份验证和身份管理解决方案。它提供了一个nodejs适配器,使用它我能够成功地与express集成。这是有效的路由文件: 'use strict'
这是我关于 Bamboo 的第二个问题 ( My First One )。阅读建议信息后我的理解是,我需要一个构建工具,例如 nAnt 或 MSbuild 来编写一个获取源代码并构建它的脚本(我正在开
可用于将第三方应用程序与 jira 4.3 集成的身份验证方案有哪些?显然,从客户那里获取用户名和密码听起来很荒谬。另外,我知道 oauth 身份验证仅适用于版本 5。请告诉我。谢谢。 附注。我不是在
我有一个使用 DDS 的旧版 C++ 应用程序用于异步通信/消息传递。我需要将此应用程序集成到使用 JMS 进行消息传递的 JavaEE 环境中。除了构建独立的 JMS/DDS 桥接模块之外,我还有其
我正在尝试使用 Whatsapp 发送测试消息,但收到此错误消息: "error":{"code":27,"description":"Recipient not available on chann
我想将 photologue 与我的 Django 应用程序集成,并使用它在车辆库存中显示照片......有点像 Boost Motor Group Inc. 提供的内容。我已经集成了该应用程序,所以
我目前正在尝试弄清楚如何与 fujitsu scansnap 扫描仪集成,但没有从 fujitsu 找到有关 fujitsu scansnap 管理器如何调用您的应用程序并将文件发送到您的应用程序的详
在我的项目中,我使用了 9 个(九个)int-ip:udp-inbound-channel-adapter 和一个 jms:inbound-channel-adapter。 Jms 适配器从服务器接收
在我们当前的原型(prototype)中,大多数标准 HTML 控件都被小程序取代,最重要的是表单提交由小程序触发。 有没有一种方法可以像 一样在服务器端调用关联的操作 ? 本文Applet and
是否可以使用 twilio 号码从 whatsapp 发送/接收短信?有人用whatsapp试过twilio吗?我问过客服,如果可能的话,他说,不确定,但很多人都问过这个问题。 最佳答案 万一其他人来
我们办公室中几乎不存在版本控制,这显然导致了很多麻烦。我们想使用SVN和Notepad++进行设置...任何人都对如何实现此目标有任何想法?我已经开始研究并浏览了这个网站: http://www.sw
曾经有提供这种集成的 spring-modules 项目;但是,该项目现已弃用。现在有没有人继续支持这种集成?谢谢。 最佳答案 工作正在进行中。 http://blog.athico.com/sear
我的理解是,根据 http://wiki.dbpedia.org/Datasets,DBpedia 从 YAGO 获取类层次结构,而不是实体。 .但是,类似 http://dbpedia.org/cl
任何人都可以帮助我如何将 OpenCMS 与 Java Spring Web 应用程序集成。已经用谷歌搜索并浏览了很多网站但没有用。所以,请帮助我。 最佳答案 我认为将 SpringMVC 与 Ope
我正在尝试使用新的 migs getaway (MPGS) 我遵循了下一个 url 中的代码 https://ap-gateway.mastercard.com/api/documentation/i
关闭。这个问题不满足Stack Overflow guidelines .它目前不接受答案。 想改善这个问题吗?更新问题,使其成为 on-topic对于堆栈溢出。 4年前关闭。 Improve thi
我有一个 cmake 项目。我想轻松完成以下操作 搜索光标下任何变量、函数等的声明、定义和引用,这些可能在外部头文件中声明,其路径是在CMakeLists.txt中使用INCLUDE_DIRECTOR
有人能给我指点一下 Objective-C(或 c/c++)库的方向,或者教通过 FTP 上传或下载的教程(Objective-C)吗?最好能展示如何将文件下载到临时目录,然后稍后上传?我不介意针对
集成()给出了非常错误的答案: integrate(function (x) dnorm(x, -5, 0.07), -Inf, Inf, subdivisions = 10000L) # 2.127
我是一名优秀的程序员,十分优秀!