La valeur du champ de texte de l'api Twitter est tronquée

pourquoi la valeur du champ texte est tronquée et comment obtenir la valeur complète. A partir de Maintenant, j'essaie d'obtenir la valeur du champ de texte comme ci-dessous

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"]!)
               }
       }
}

la sortie est

RT @WarfareWW: #Russie/#Inde peut détenir des lancements de missiles de croisière BrahMos de Su-30MKI vs mer/grnd trgts à la fin de cette année https://...

trois points au bout de la ligne. j'ai besoin d'imprimer le texte complet sans troncature.

Twitter exemple de résultat de recherche JSON Données

{
      "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
}
19
demandé sur shesh nath 2016-08-02 13:23:17

2 réponses

L'API Twitter a été modifiée récemment, pour supporter les nouvelles règles concernant la limite de 280 caractères.

  1. pour obtenir le texte complet du tweet, ajouter le paramètre tweet_mode valeur extended vos paramètres de la requête.
  2. Champ text dans la réponse JSON a été remplacé par full_text

Plus d'infos ici: https://dev.twitter.com/overview/api/upcoming-changes-to-tweets

33
répondu Ely 2017-12-18 18:05:00

le statut dans cet exemple est un retweet, et le texte pour les retweets sera tronqué à 140 caractères même après avoir inclus tweet_mode=extended. Le texte intégral du tweet original est dans le retweeted_status champ de la réponse JSON. Voici ce que vous voulez:

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

Gardez à l'esprit que vous devez toujours inclure tweet_mode=extended dans votre demande.

4
répondu pterry26 2017-12-08 19:29:34