Swifter를 사용하여 이미지 게시
5755 단어 SwiftSwifterTwitterAPI
소개
Swift에서 TwitterAPI를 사용하여 이미지를 게시하고 싶었지만 기사가별로 없으므로 게시합니다.
Swifter라는 라이브러리를 사용하고 있습니다. 문서에는 이미지를 투고하는 것에 대해서는 쓰고 있지 않았습니다만 코드 읽고 나면 그들 문장이 있었으므로 그것을 사용했습니다.
htps : // 기주 b. 코 m / t t don ly / su f r
이번에 할 일
OAuth 인증.
이것에 관해서는 기사를 따로 쓰고 있으므로 그쪽을 봐 주세요.
이미지를 게시합니다.
let image = UIImage(hogehoge)//投稿する画像を入れる。
let data = image.pngData()//data型に変換
//aouth認証で入手したやつを入れる。
let swifter = Swifter(consumerKey: 取得したkey,
consumerSecret: 取得したkey,
oauthToken: 取得したkey,
oauthTokenSecret: 取得したkey)
//ツイート。statusには文をmediaには画像をdata型に変換したものを入れる
swifter.postTweet(status: "test", media: data!,success: { json in
print(json)//成功時
}, failure: {error in
print(error)//失敗時
})
이런 느낌으로 트윗할 수 있었습니다.
문장만 투고하는 postTweet는 문서에 실려 있었습니다만 이미지 투고도 같은 느낌으로 트윗 할 수 있었습니다.
보충 (413 payload too large error가 돌아오는 경우)
자신의 경우 iPhone 폴더에서 이미지를 읽고 앱에 저장 한 후
다시 앱에서 저장한 이미지를 읽는 트위터에 게시하는 절차였기 때문에 이 절차의 어딘가에서 이미지가 커져 버렸을지도 모릅니다.
어쩌면 같은 오류가 돌아오는 사람이 있을지도 모르기 때문에 해결 방법을 올려 둡니다.
let image = UIImage(hogehoge)//投稿する画像
//大きさをresizeする
let width = image.size.width * 0.1
let height = image.size.height * 0.1
UIGraphicsBeginImageContextWithOptions(CGSize(width: width, height: height), false, 1.0)
image.draw(in: CGRect(x: 0, y: 0, width: width, height: height))
let resizeImage = UIGraphicsGetImageFromCurrentImageContext()
UIGraphicsEndImageContext()
//大きさをresizeした後にdata型に変換
image.pngData()
이런 느낌으로 이미지의 크기를 resize 해주면 잘 tweet 할 수있었습니다. 0.1배가 아니어도 좋을지도 모릅니다만 좋은 느낌의 크기로 해 트윗 해 주세요.
참고: 이미지가 거칠어질 수 있습니다.
Reference
이 문제에 관하여(Swifter를 사용하여 이미지 게시), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/daichi77/items/2d090e2e9acc369a9a9b텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)