2016-08-28 23 views
0

iOSのTwitterKit APIを使用してリストのメンバーを抽出しようとしています。私が理解しているように、これを行うことで、私の個人的な消費者および消費者秘密鍵の必要性を回避して、「ゲスト認証」することができます。私はendpointを変更した場合、代わりにそのリスト内のステータスを取得するためにリクエストが失敗しました:ファブリックtwitterkitの禁止(403)

Error Domain=TwitterAPIErrorDomain Code=220 "Request failed: forbidden (403)" UserInfo={NSLocalizedFailureReason=Twitter API error : Your credentials do not allow access to this resource (code 220), TWTRNetworkingStatusCode=403, NSErrorFailingURLKey=https://api.twitter.com/1.1/lists/members.json?owner_screen_name=palafo&slug=breakingnews, NSLocalizedDescription=Request failed: forbidden (403)}) 

リストのメンバーを取得しようとする試み以下のコードは、私は、このエラーが発生しますthis REST endpoint

let client = TWTRAPIClient() 
let endpoint = "https://api.twitter.com/1.1/lists/members.json" 
let params = ["owner_screen_name" : "palafo", "slug" : "breakingnews"] 
var clientError : NSError? 

let request = client.URLRequestWithMethod("GET", URL: endpoint, parameters: params, error: &clientError) 

client.sendTwitterRequest(request) { (response, data, connectionError) -> Void in 
    if connectionError != nil { 
     print("Error: \(connectionError)") 
    } 

    do { 
     let json = try NSJSONSerialization.JSONObjectWithData(data!, options: []) 
     print("json: \(json)") 
    } catch let jsonError as NSError { 
     print("json error: \(jsonError.localizedDescription)") 
    } 
} 

ランニングを使用してthis other REST endpointを使用して、私は適切なJSON応答を取得します。

let endpoint = "https://api.twitter.com/1.1/lists/statuses.json" 

これは、Fabricのゲスト認証でリストのメンバーを取得できないということですか?

答えて

6

ちょうどinitを使って初期化するのではなく、clientWithUserIdを使って私が解決しました。

NSString *userID = [Twitter sharedInstance].sessionStore.session.userID; 
TWTRAPIClient *client = [[TWTRAPIClient alloc] initWithUserID:userID]; 
+0

あなたは命の恩人です。ありがとうございました – adiman

関連する問題