ios - Linkedin API 401 [未经授权]。 (带有OAuthStarterKit的iOS)错误

标签 ios api linkedin

尝试从我的iPhone应用发布状态更新时,我收到了此回复。而且我不知道我在做什么错,我经常出入文档,数据包嗅探,linkedin论坛以及与Linkedin API怪物打交道的代码,但我无法克服这个错误,并且很乐意得到任何人的指点,他们可以帮助我解决和/或解决此问题:

data: <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<error>
<status>401</status>
<timestamp>1349234286875</timestamp>
<request-id>ZAAVLR7K6H</request-id>
<error-code>0</error-code>
<message>[unauthorized]. OAUxxxxxxxx-xxxxxxxx|*xx|*xx:xxxxxxxx:lxxxxxxxxxxxxxxxx=</message>
</error>

我请求以下权限:r_fullprofile r_contactinfo r_emailaddress,rw_nus用于授权。

图形路径设置为:
http://api.linkedin.com/v1/people/~/shares

授权后的基本签名如下:
POST&http%3A%2F%2Fapi.linkedin.com%2Fv1%2Fpeople%2F~%2Fshares&oauth_consumer_key%3Diws9c2xtzgdr%26oauth_nonce%xxxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx%26oauth_signature_method%3DHMAC-SHA1%26oauth_timestamp%3D1349234713%26oauth_token%xxxxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx%26oauth_version%3D1.0

我调用的开始时的主要代码如下:
- (void) updateStatus : (NSString *) status{
if (self.consumer != nil) {
OAMutableURLRequest *request =
[[OAMutableURLRequest alloc] initWithURL: requestURL
consumer: self.consumer
token: self.accessToken
callback: nil
signatureProvider: nil];

NSMutableDictionary *permsDict = [NSMutableDictionary dictionary];

[permsDict setValue: @"anyone" forKey: @"code"];

NSMutableDictionary *shareJSONDict = [NSMutableDictionary dictionary];

[shareJSONDict setValue: permsDict forKey: @"visibility"];
[shareJSONDict setValue: @"test" forKey: @"comment"];

[request setValue:@"application/json" forHTTPHeaderField:@"x-li-format"];

NSString *updateString = [shareJSONDict JSONString];

[request setHTTPBodyWithString:updateString];
[request setHTTPMethod:@"POST"];

OADataFetcher *fetcher = [[OADataFetcher alloc] init];

[fetcher fetchDataWithRequest: request
delegate: self.sessionDelegate
didFinishSelector: @selector(postUpdateApiCallResult:didFinish:)
didFailSelector: @selector(postUpdateApiCallResult:didFail:)];
}
}

到目前为止,使用Linkedin API花费了12个小时,我要做的就是获取用户的基本信息,并能够在Linkedin上分享,而使用Facebook和Twitter花费了30秒。

最佳答案

首先,您的应用程序的基本配置文件中不允许r_fullprofile, r_contactinfo, rw_nus。如果要使用它们,则必须订阅LinkedIN Partnership Programs

其次,您必须打开w_share的权限。

关于ios - Linkedin API 401 [未经授权]。 (带有OAuthStarterKit的iOS)错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12701590/

相关文章:

wordpress - WP REST API 如何检查 header 基本身份验证

android - 处理 Android 中 LinkedIn 应用程序下载对话框的取消

javascript - Soundcloud API 错误 NS_ERROR_DOM_BAD_URI : Access to restricted URI denied (JavaScript)

ios - 放松 segue 干扰 shoe segue

iOS View.layer.border 有白边

ios - 保存图像文件路径时 MagicalRecord 奇怪的崩溃

api - 部件之间的共享变量

iphone - 领英邀请API错误401[未授权]-iPhone sdk

android - 用于进行服务器端 REST API 调用的 LinkedIn 移动访问 token

ios - 通过按下按钮(Swift)打开具有特定位置的天气应用程序