テキストフィールドの値が切り捨てられる理由と完全な値を取得する方法今のところ、私は以下のようなテキストフィールド値を取得しようとしています
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"]!)
}
}
}
出力は
RT @WarfareWW:#Russia /#Indiaは、今年末にSu-30MKI vs海/ grnd trgtsからBrahMos巡航ミサイルの発射を保持する可能性があります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
}
Twitter APIは最近変更され、280文字の制限に関する新しいルールをサポートするようになりました。
extended
のパラメーターTweet_mode
をリクエストパラメーターに追加します。text
はfull_text
に置き換えられました詳細はこちら: https://dev.Twitter.com/overview/api/upcoming-changes-to-tweets
この例のステータスはリツイートです。リツイートのテキストは、Tweet_mode=extended
を含めた後でも140文字に切り捨てられます。元のツイートの全文は、JSON応答のretweeted_status
フィールドにあります。欲しいものは次のとおりです。
let text = status["retweeted_status"]["full_text"]
。
リクエストにはTweet_mode=extended
を含める必要があることに注意してください。