2016-08-02 6 views
9

なぜテキストフィールドの値が切り捨てられ、どのように完全な値を取得できますか。 #ロシア/#インドは蘇-30MKI VSからブラモス巡航ミサイルの発射を保持することがあります。今、私は出力がTwitterのapiテキストフィールドの値が切り捨てられます

RT @WarfareWWある

do { 
     if let responseObject = try NSJSONSerialization.JSONObjectWithData(response, options: []) as? [String:AnyObject], 
      arrayStatuses = responseObject["statuses"] as? [[String:AnyObject]] { 
       let arrTweets:NSMutableArray = NSMutableArray() 
       for status in arrayStatuses { 
        let text = status["text"]! 
        print(status["text"]!) 
       } 
     } 
} 

以下のようなテキストフィールドの値を取得しようとしていますのよう 今年末のsea/grnd trgts https:// ...

行の最後に3つのドット。私は切り捨てなしで完全なテストを印刷する必要があります。

Twitterのサンプル検索結果JSONデータ

{ 
     "created_at": "Mon Aug 01 08:07:43 +0000 2016", 
     "id": 760024194079916032, 
     "id_str": "760024194079916032", 
     "text": "RT @khalidasopore: #KEXIT #KASHEXIT #KashmirKillings #Inida #Pakistan Just trend it my dear Indians to save #Kashmir from Pak Goons https:/…", 
     "truncated": false 
} 
+0

あなたは応答として正しい文字列を取得していることを証明することができますか、ウェブなどで要求の応答を表示します。 –

+0

'UILabel'は、高さと幅が固定されていればテキストを切り捨てます。 .nu​​mberOfLines = 0' - そうでなければ@ Lu_のコメントに続いてjsonの例を提供できます。 – Wez

+0

UILabelの問題だけではありません。print()は文字列を切り捨てます –

答えて

14

TwitterのAPIは、280文字の制限に関する新たなルールをサポートするために、最近変更されました。

  1. リクエストパラメータに値extendedでパラメータtweet_modeを追加し、つぶやきの全文を取得するには。
  2. JSON応答のフィールドtextはここfull_text

詳細情報に置き換えられています。この例ではステータスがリツイートされ、かつリツイートのテキストでも140文字に切り捨てられますhttps://dev.twitter.com/overview/api/upcoming-changes-to-tweets

+1

で更新しました。Java Spark Streamingアプリケーションでは、どこで 'tweet_mode'パラメータを設定しますか?私はリスナーと一緒に動作する 'FilterQuery'を持っています。 @Ely – sirdan

0

tweet_mode=extendedを含めるとオリジナルのツイートの全文は、JSONレスポンスのretweeted_statusフィールドにあります。ここにあなたが望むものがあります:

let text = status["retweeted_status"]["full_text"]

依頼には依然としてtweet_mode=extendedを含める必要があります。