Tag: 谷歌 OAuth

WooCommerce iOS OAuth无效签名

当从iOS应用程序发送请求到WooCommerce api时,许多人一直在寻找解决无效签名问题的方法。 我在这里把解决scheme放在一起。

使用Oauth2成功validation后获取用户信息

在我的iPhone应用程序中,我正在使用谷歌login使用Oauth2 ,我正在跟随这个insturction,并成功login – (void)viewController:(GTMOAuth2ViewControllerTouch * )viewController finishedWithAuth:(GTMOAuth2Authentication * )auth error:(NSError * )error { if(!error) { UIAlertView * alert = [[UIAlertView alloc] initWithTitle:@"Success Authorizing with Google" message:nil delegate:nil cancelButtonTitle:@"OK" otherButtonTitles:nil]; [alert show]; } 我正在使用https://www.googleapis.com/auth/userinfo.profile范围GTMOAuth2Authentication ,现在我想获得用户的基本信息,如姓名,年龄,电子邮件等。 那么我怎么能得到所有的细节? 我搜寻很多,但没有发现任何东西。 可能重复的问题如何获得iOS中的OAuth2用户信息? ,但它也没有帮助。 请帮忙

Tumblr OAuth图片文章给我401 /“无效的OAuth凭证”

我有一个iOS应用程序发布图像到几个服务,包括Twitter和我试图扩大对tumblr的支持。 我已经调整了OAuth 1.0a标题逻辑的一些开源代码,并且它的工作方式足以成功地用于twitter + twitpic和tumblr的身份validation。 但是,图片发布到tumblr的状态为401,string响应“无效的OAuth凭证” 为了简化,我唯一的多部分部分是posttypes和图像数据。 所以我简单的POST是http://www.tumblr.com/api/write ,签名基本string是(粗略地说,因为我已经编辑了我的消费者密钥和令牌,并添加了换行符以提高可读性): POST&http%3A%2F%2Fwww.tumblr.com%2Fapi%2Fwrite& oauth_consumer_key%3Dxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx%26 oauth_nonce%3D71edd7a1224463a7e1723bb7b568060b4d69deb6%26 oauth_signature_method%3DHMAC-SHA1%26 oauth_timestamp%3D1297678418%26 oauth_token%3Dxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx%26 oauth_version%3D1.0%26 type%3Dphoto 我的oauth标题是(再次,linebreaks添加在这里为了可读性): Authorization: OAuth realm="http://www.tumblr.com/", oauth_consumer_key="xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx", oauth_signature_method="HMAC-SHA1", oauth_timestamp="1296445530", oauth_nonce="71edd7a1224463a7e1723bb7b568060b4d69deb6", oauth_version="1.0", oauth_token="xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx", oauth_signature="fWuli4eO3qVehfdeFzZN%2FDNYpFk%3D" 我添加的唯一其他标题是Content-Type(multipart / form-data)&Content-Length,而消息体只是: –my_sorta_unique_boundary_string Content-Disposition: form-data; name="type" photo –my_sorta_unique_boundary_string Content-Disposition: form-data; name="data" Content-Type: image/jpg Content-Transfer-Encoding: binary … (image data) … –my_sorta_unique_boundary_string– 任何人都可以告诉我,如果我的签名基础string或身份validation标题做错了什么,或者如果有一些窍门让tumblr oauth职位工作?

从LinkedIn API获取电子邮件地址

我想在我的应用程序中包含“使用LinkedIn注册”function。 我希望能够得到一些信息,如姓名和电子邮件。 默认情况下,我可以得到一个名字,但我被困在获得电子邮件。 我的结果是在JSON中。 这是我的代码: – (IBAction)logInWithLinkedIn:(id)sender { if ([_client validToken]) { [self requestMeWithToken:[_client accessToken]]; } else { [_client getAuthorizationCode:^(NSString *code) { [self.client getAccessToken:code success:^(NSDictionary *accessTokenData) { NSString *accessToken = [accessTokenData objectForKey:@"access_token"]; [self requestMeWithToken:accessToken]; } failure:^(NSError *error) { NSLog(@"Quering accessToken failed %@", error); }]; } cancel:^{ NSLog(@"Authorization was cancelled by user"); } failure:^(NSError *error) { […]

麻烦处理GoogleloginSwift 3

我是新来的iOS,并在Swift 3中的应用程序委托URL处理有问题,我真的可以使用一些指针。 下面的代码在Swift 2.3中工作得很好: func application(application: UIApplication, openURL url: NSURL, options: [String: AnyObject]) -> Bool { return GIDSignIn.sharedInstance().handleURL(url, sourceApplication: options[UIApplicationOpenURLOptionsSourceApplicationKey] as? String, annotation: options[UIApplicationOpenURLOptionsAnnotationKey]) } func application(application: UIApplication, openURL url: NSURL, sourceApplication: String?, annotation: AnyObject?) -> Bool { var options: [String: AnyObject] = [UIApplicationOpenURLOptionsSourceApplicationKey: sourceApplication, UIApplicationOpenURLOptionsAnnotationKey: annotation] return GIDSignIn.sharedInstance().handleURL(url, sourceApplication: sourceApplication, annotation: annotation) } 当我直接从Firebase网站粘贴swift […]

优步API iOS OAuth 2.0

我试图制作一个iOS,它将使用Uber API来执行诸如获取游乐设施等等。 我正在尝试在iPhone上实现OAuth 2.0,而不使用任何服务器端帮助。 那可能吗? 有没有人做过这个? 这里有一些参考: Uber身份validation: https : //developer.uber.com/v1/auth/ Oauth 2.0: https : //aaronparecki.com/articles/2012/07/29/1/oauth2-simplified

SFSafariViewController删除OAuth2 Cookie

我有一个iOS应用程序,使用UIWebView OAuth2使用Uber API进行身份validation。 当升级到iOS 9时,我遇到了阻止login页面的https请求的ATS问题。 然后,我为Uberlogin页面添加了一个例外,但后来注意到login页面向Facebook,Amazon Web Services和其他网站发出了其他几个请求,都被ATS阻止。 我不想维护Uberlogin页面的例外列表,因为Uber可以轻松地更改他们的页面,我的应用程序将不会有正确的例外。 所以我决定给SFSafariViewController一个镜头。 我能够使用SFSafariViewController完成OAuth2进程,问题是当身份validation完成时,Uber会存储某些types的Cookie。 如果我想validation一个不同的帐户,并再次调出SFSafariViewController ,则cookie会从之前的validation中提取出来,并且没有机会validation其他帐户。 我通过使用UIWebView通过NSHTTPCookieStorage删除cookie来解决这个NSHTTPCookieStorage ,但是我没有看到从SFSafariViewController删除cookie的SFSafariViewController 。

Google Plus使用UIWebViewloginiOS

我正在使用Google Plus SDK在我的应用中使用Google +login。 当用户点击loginbutton时,用户被redirect到Safari浏览器。 (标准过程)。 不过,苹果似乎已经改变了这个规则。 我的应用程序因此被拒绝,说明如下 该应用程序启动移动Safari浏览器完成login到Google+之前返回到应用程序。 但是,使用不应该退出应用程序才能使用它。 要解决这个问题,修改您的应用程序以允许用户通过应用程序login,为您的应用程序创build另一个身份validation方法或从使用您的应用程序中删除此要求是适当的 是否有人面临同样的问题,并有解决scheme? 解决方法是使用UIWebView并使用OAuth访问令牌。 但是,这不能为我提供单一loginfunction。 也没有人知道如何使用访问令牌(没有SDKfunction)共享图像。 我已经find了SDK中的GTMOAuth2ViewControllerTouch文件,但仍然没有运气。 任何人都可以帮助我这个class?

如何使用Google离线访问令牌在iOS的后台进行身份validation?

简洁版本: 我想使用Objective-C的Google OAuth2客户端为我创build一个有效的GTMOAuth2Authentication对象,以便在我的应用程序中使用,并使用我从后端获得的脱机访问令牌。 我怎么能做到这一点? 我的情况: 我的应用使用Google Analytics(分析)只读范围来获取有关用户网站的一些数据。 我完成这个任务的方式是使用Google OAuth2客户端为Objective C提供的GTMOAuth2ViewControllerTouch ViewController进行login。然后,它将为我提供有效的GTMOAuth2Authentication对象,以便我可以通过Google API客户端查询Google Analytics。 现在,我们不希望为用户提供Google Analytics访问权限(有些没有Google帐户,一般而言,我们希望通过应用保持简单的信息)。 这意味着我们需要使用我们的帐户login(可以访问所有网站的Google Analytics数据)。 显然,我们不能给我们的用户我们的凭据,所以我们必须find一个解决scheme。 我的计划: 我认为这个问题可以通过从我们的后端(通过SSLencryption)请求我们的(离线访问)令牌string来解决,将其保存到用户的钥匙串中,并在应用程序中进一步使用它来查询分析。 然后我们让用户login我们的服务(这样我们可以确定用户有权访问哪个网站),并显示数据。 我的问题: 我到处search过,查看了Google的(非常简单的)文档,检查了GTMOAuth2Authentication源代码,但似乎无法绕开这个问题。 在我看来,会有这样的解决scheme(因为我们在CMS中使用类似的方法让用户张贴到我们的Facebook墙),所以我在这里错过了什么? 当前的login码: GTMOAuth2ViewControllerTouch *viewController = [[GTMOAuth2ViewControllerTouch alloc] initWithScope:scope clientID:kMyClientID clientSecret:kMyClientSecret keychainItemName:kKeychainItemName completionHandler: ^(GTMOAuth2ViewControllerTouch *viewController, GTMOAuth2Authentication *auth, NSError *error) { if (error != nil) { // Authentication failed DebugLog(@"Failed!"); } else { // […]

优步无效的OAuth 2.0凭据提供Uber身份validation在iOS Swift中

我在我的iOS(Swift)应用程序中实现Uber的Request Endpoint 。 Request API / Endpoint需要使用应用程序的用户身份validation,这里是文档 。 为此,我使用这个Oauth2.0库 我做的是 在给定的安装说明的帮助下,成功地将库集成到我的项目(xCode)中。 在我的AppDelegate let uber_OAuth_Settings = [ "client_id": "XXXXXXX9vtKzobvXXXXXX", "client_secret": "EXXXXXXXXyFUNCa_Wez6AXXXXXXXnrXtxus", "authorize_uri": "https://login.uber.com/oauth/authorize", "token_uri": "https://login.uber.com/oauth/token", "redirect_uris": ["jamesappv2://oauth/callback"], // don't forget to register this scheme ] as OAuth2JSON var oauth:OAuth2CodeGrant! 在我的方法didFinishLaunchingWithOptions的Appdelegate oauth = OAuth2CodeGrant(settings: uber_OAuth_Settings) oauth.viewTitle = "Uber Login Service" // optional oauth.verbose = true // For […]