使用 Instapaper API 时,为什么我不断收到 401 错误?

问题描述 投票:0回答:1

我正在尝试通过 AFOAuth2Client 库使用完整的 Instapaper API,但我不断收到错误代码 401。我不知道我的代码出了什么问题。当我从电子邮件中复制并粘贴它们时,我绝对拥有正确的 ID 和秘密。

- (IBAction)loginPressed:(UIButton *)sender {
    NSURL *baseURL = [NSURL URLWithString:@"https://www.instapaper.com/"];

    AFOAuth2Client *OAuthClient = [AFOAuth2Client clientWithBaseURL:baseURL
                                                  clientID:@"fromEmail"
                                                  secret:@"fromEmail"];

    NSDictionary *parameters = @{
        @"x_auth_username:" : self.usernameField.text,
        @"x_auth_password:" : self.passwordField.text,
        @"x_auth_mode:" : @"client_auth"
    };

    [OAuthClient authenticateUsingOAuthWithPath:@"api/1/oauth/access_token"
                 parameters:parameters
                 success:^(AFOAuthCredential *credential) {
                     NSLog(@"I has token! %@", credential.accessToken);
                     // [AFOAuthCredential storeCredential:credential withIdentifier:OAuthClient.serviceProviderIdentifier];
                 }
                 failure:^(NSError *error) {
                     NSLog(@"Sheet. %@", [error localizedDescription]);
                 }];
}
ios objective-c afnetworking instapaper
1个回答
1
投票

根据Instapaper的API文档

Instapaper 的 OAuth 实现与您可能习惯的不同:没有请求令牌/授权工作流程。这使得事情变得简单得多。相反,Instapaper 使用与 Twitter 非常相似的 xAuth 实现。所以你仍然需要签署你的请求,但获取令牌很简单。

xAuth 是获取 Instapaper 访问令牌的唯一方法。

OAuth 2 与 OAuth 1 不同,OAuth 1 本身也与 xAuth 不同。

AFOAuth2Client
在这里不起作用。您可能会幸运地获得
AFXAuthClient
AFOAuth1Client

© www.soinside.com 2019 - 2024. All rights reserved.