0

Instagram API で oauth_token を取得しようとしています。私は彼らの文書を見ました。したがって、トークンを取得する操作は次のようになります。uiwebview は、ユーザーが [承認] をクリックすると、特別なリクエスト URL をクライアント ID とリダイレクト URI で読み込みます。サーバーは、CODE を使用してリダイレクト URI にリダイレクトします。次に、受信したコードをクライアント ID とクライアント シークレットとともに投稿する必要があります。これが私のloginViewControllerコードです。AFNetworking でデータを POST しようとしています。私は何を間違っていますか?

CODE しか取得できませんが、POST してトークンを取得することはできません。

- (void)viewDidLoad
{
    [loginPage loadRequest:[NSURLRequest requestWithURL:
[NSURL URLWithString:@"https://api.instagram.com/oauth/authorize/?
client_id=MY_CLIENT_ID&redirect_uri=http://MY_REDIRECT_URI/&response_type=code"]]];

    [super viewDidLoad];
}

- (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:
(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType{

    //here I'm getting the CODE
    NSURL *clickedURL = [request URL];
    NSString *URLString = [clickedURL absoluteString];
    NSArray *tmpArr = [URLString componentsSeparatedByString:@"="];
    code = [tmpArr objectAtIndex:1];
    NSLog(@"code: %@", code);

次はどうする??

4

1 に答える 1

0

私は OAuth を数回実装しましたが、gtm-oauthを利用することをお勧めします。OAuth を使用する場合、考えられるすべてのエラーなどを統合して処理するのはかなり簡単です。あるいは、AFNetworking には開発中の OAuth プロジェクトがいくつかあります。OAuth1 / OAuth2

独自のものを構築することもできますが、返されたすべてのエラーを処理するだけでなく、gtm-oauth が既に行っている webview 内のページ間を移動する方法を構築する必要があります。

于 2012-09-28T09:41:23.850 に答える