iOS アプリ内で khan academy API を呼び出そうとしています。AFNetworking クラスを使用して API 呼び出しを行っています。これが私のコードです:
AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager];
manager.responseSerializer = [AFJSONResponseSerializer serializer];
manager.requestSerializer = [AFJSONRequestSerializer serializer];
[manager GET:@"http://www.khanacademy.org//api/v1/topictree" parameters:nil success:^(AFHTTPRequestOperation *operation, id responseObject) {
[activityIndicator stopAnimating];
NSLog(@"no error");
for (NSString *key in [responseObject allKeys]) {
NSLog(@"%@", [responseObject objectForKey:key]);
}
} failure:^(AFHTTPRequestOperation *operation, NSError *error) {
NSLog(@"error");
[activityIndicator stopAnimating];
NSLog(@"Error Khan: %@", [error localizedDescription]);
}];
http://www.khanacademy.org//api/v1/topictreeにアクセスしたとき、それは非常に長いリストでした。NSDictionary を 1 つしか取得していないため、JSON 解析である可能性があります。上記のコードでわかるように、Fast Enumeration を使用して値とキーを表示しました。
それが正しい解析である場合。すべてのトピックのリストを取得するためにどのキーを使用すればよいかわかりません。次に、ユーザーがビデオのリストを表示したいトピックをクリックすると、mp4 固有のビデオ ダウンロード URL にアクセスする必要があります。プレイリスト リスト メソッドで実行できましたが、廃止されました。
これの目標は、トピックの後にトピックのビデオが続き、その後にビデオの説明が続き、mp4 形式でダウンロード可能な URL のリストを表示できるようにすることです。
Error Khan というエラーも表示されます。
操作を完了できませんでした。(ココア エラー 3840。)
しかし、それが機能する場合もあります。
すべての助けに感謝します。
前もって感謝します、
ジョエル