【问题标题】:iOS LinkedIn API erroriOS LinkedIn API 错误
【发布时间】:2015-07-25 18:37:19
【问题描述】:

我正在尝试在我的项目中实现 this LinkedIn library,但在尝试显示 LinkedIn 屏幕时似乎出现错误:

LinkedIn1 授权失败:错误域=LIALinkedInERROR 代码=1 "操作无法完成。(LIALinkedInERROR 错误 1.)"

你可以找到我正在使用的代码here

【问题讨论】:

    标签: ios oauth linkedin


    【解决方案1】:

    我也遇到了同样的问题。我的错误是 Error Domain=LIALinkedInERROR Code=2。 2016 年 5 月 26 日,Linkedin 再次进行了一些更改,因为额外的“#!”被添加到状态中,因此状态在 LIALinkedInAuthorizationViewController 类中不匹配。所以解决方案是通过替换字符串或检查包含字符串来删除这两个字符。

    在这个方法的else部分- (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType {

    改为`

          NSString *receivedState = [[self extractGetParameter:@"state" fromURLString: url] stringByReplacingOccurrencesOfString:@"#!" withString:@""];
    

    ` 或 apply 包含字符串,以便完全匹配状态。

    我知道这是一种奇怪的解决方案,但这对我有用。希望它也能帮助你。 万事如意

    【讨论】:

    • 经过数小时的搜索,您给了我解决方案...非常感谢!
    • 很高兴帮助哥们:)
    • 今天我注意到了同样的问题。非常感谢您的快速修复:)
    • 谢谢,它对我也有帮助。我使用github.com/ahmetkgunay/LinkedinIOSHelper。但是我通过 pod 使用这个库,它需要在 github 上修复和更新。我给图书馆的作者写了一封信。希望他能尽快做到。
    • @KunalGupta 的工作方式与 charm.but 可以获取用户电子邮件地址
    【解决方案2】:

    你应该使用:

    code=https://www.linkedin.com/oauth/v2/authorization?
    

    代替:

    code=https://www.linkedin.com//uas/oauth2/authorization?
    

    也在linkedin api中:

    LIALinkedInAuthorizationViewController.m
    LIALinkedInHttpClient
    

    变化:

    NSString *accessTokenUrl = @"/uas/oauth2/accessToken?grant_type=authorization_code&code=%@&redirect_uri=%@&client_id=%@&client_secret=%@";
    

    作者:

    NSString *accessTokenUrl = @"/oauth/v2/accessToken?grant_type=authorization_code&code=%@&redirect_uri=%@&client_id=%@&client_secret=%@";
    

    【讨论】:

      【解决方案3】:

      Jack 的回答绝对正确,Jack's Answer。除此之外你还可以使用这个库LinkedinIOSHelper,它很容易使用

      【讨论】:

      • 提醒一下,该站点的policy for self-promotion 要求您在答案中表明您与该项目的从属关系,即使它是一个非商业的开源项目。指示可以简单到说“我的图书馆”而不是“Tthis 图书馆”。
      • 感谢您的警告。我会更小心的
      【解决方案4】:

      自 5 月 12 日以来,Linkedin 的 API 发生了变化。从现在开始,任何请求r_contactinfo 的应用程序都必须得到领英的批准。 This link 解释了这些变化。

      我正在使用这个库,只需将权限从 @"r_contactinfo" 更改为 @"r_basicprofile", @"r_emailaddress"

      还记得更改您在 developer.linkedin.com 上的应用权限以匹配上述内容。

      【讨论】:

      • 所以我要检索的是用户技能和背书,你能指导我应该做什么,是否必须进入/申请合作伙伴计划?
      • 据我所知,您需要访问r_fullprofile 才能获得技能和认可。现在这需要获得 LinkedIn 的批准(you apply for here)。
      • 感谢@jack 的帮助,如果可能的话,我会努力成为合作伙伴计划的成员,1+ 的支持
      【解决方案5】:

      希望这些信息对您有所帮助 -

      API Terms of Use

      Transition Guide

      【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-02-02
      • 2017-02-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-10-06
      相关资源
      最近更新 更多