トップ回答者
VB.NETで写真付きのツイートをする方法がわかりません。

質問
-
Private Sub button1_Click(sender As Object, e As EventArgs) Handles button1.Click
Dim tokens As CoreTweet.Tokens = CoreTweet.Tokens.Create(
" ", " ",
" ", " ")
tokens.Statuses.Update(textbox1.Text)
End Sub上のプログラムでVB.NETでTwitterAppsとCoreTweetを使って文字のみをツイートをすることはできましたが、写真付きのツイートをする方法がわかりません。
https://github.com/CoreTweet/CoreTweet/wiki/%E7%94%BB%E5%83%8F%E3%82%84%E5%8B%95%E7%94%BB%E3%82%92%E3%82%A2%E3%83%83%E3%83%97%E3%83%AD%E3%83%BC%E3%83%89%E3%81%97%E3%81%A6%E3%83%84%E3%82%A4%E3%83%BC%E3%83%88%E3%81%99%E3%82%8B%E6%96%B9%E6%B3%95
一応上のURLのサイトでC#を用いた写真付きのツイートをする方法は書いてありましたが、どうしてもVB.NETの言語に翻訳することができません。VB初心者ですので、どなたか教えてくださいませんでしょうか。
回答
-
以下に解説します。
また、【動作確認していない】ですので、自己責任でお願いいたします。
Imports CoreTweet Module Module1 Sub Main() Dim t = Tokens.Create("", "", "", "") ' Update メソッドにマウスオーバーすれば、オーバーロードの引数を見ることができます ' 引数がたくさんある版で実行 t.Statuses.Update("初めてのツイート!") ' tokens.Statuses.Update(status: "初めてのツイート!"); ' こちらも、引数がたくさんある版で実行。ただし、 ' 名前による引数渡し ' https://docs.microsoft.com/ja-jp/dotnet/visual-basic/programming-guide/language-features/procedures/passing-arguments-by-position-and-by-name t.Statuses.Update(status:="初めてのツイート!") ' tokens.Statuses.Update(status => "初めてのツイート!"); ' 式ツリー(ラムダ式)版 t.Statuses.Update(Function(status) "初めてのツイート!") 't.Statuses.Update(SetTweetInfo("初めてのツイート!")) End Sub ' Function(status) "初めてのツイート!" ' がラムダ式(名前が無いメソッド)。以下のイメージ。引数の型(String)は推論により省略可能。 Function SetTweetInfo(status As String) As String Return "初めてのツイート!" End Function End Module
で、画像付きツイートするためには、以下かなと思います。(間違ってたらごめんなさい)
Imports System.IO Imports CoreTweet Module Module1 Sub Main() Dim t As Tokens = Tokens.Create("", "", "", "") ' 画像付きのツイートを送信する ' https://github.com/CoreTweet/CoreTweet/wiki/REST-API-%E3%82%92%E4%BD%BF%E3%81%86 ' → 楽だけど、非推奨メソッドになったっぽい 't.Statuses.UpdateWithMedia(Function(status) "", Function(media) New FileInfo("")) ' → 現在は以下のやり方かな? ' 画像をアップロードしてツイートする ' https://github.com/CoreTweet/CoreTweet/wiki/%E7%94%BB%E5%83%8F%E3%82%84%E5%8B%95%E7%94%BB%E3%82%92%E3%82%A2%E3%83%83%E3%83%97%E3%83%AD%E3%83%BC%E3%83%89%E3%81%97%E3%81%A6%E3%83%84%E3%82%A4%E3%83%BC%E3%83%88%E3%81%99%E3%82%8B%E6%96%B9%E6%B3%95 Dim m As MediaUploadResult = t.Media.Upload(New FileInfo("C:\aaa.png")) Dim s As Status = t.Statuses.Update(status:="初めてのツイート!", media_ids:=New Long() {m.MediaId}) End Sub End Module
- 回答としてマーク vpbei 2018年8月9日 17:45
すべての返信
-
以下に解説します。
また、【動作確認していない】ですので、自己責任でお願いいたします。
Imports CoreTweet Module Module1 Sub Main() Dim t = Tokens.Create("", "", "", "") ' Update メソッドにマウスオーバーすれば、オーバーロードの引数を見ることができます ' 引数がたくさんある版で実行 t.Statuses.Update("初めてのツイート!") ' tokens.Statuses.Update(status: "初めてのツイート!"); ' こちらも、引数がたくさんある版で実行。ただし、 ' 名前による引数渡し ' https://docs.microsoft.com/ja-jp/dotnet/visual-basic/programming-guide/language-features/procedures/passing-arguments-by-position-and-by-name t.Statuses.Update(status:="初めてのツイート!") ' tokens.Statuses.Update(status => "初めてのツイート!"); ' 式ツリー(ラムダ式)版 t.Statuses.Update(Function(status) "初めてのツイート!") 't.Statuses.Update(SetTweetInfo("初めてのツイート!")) End Sub ' Function(status) "初めてのツイート!" ' がラムダ式(名前が無いメソッド)。以下のイメージ。引数の型(String)は推論により省略可能。 Function SetTweetInfo(status As String) As String Return "初めてのツイート!" End Function End Module
で、画像付きツイートするためには、以下かなと思います。(間違ってたらごめんなさい)
Imports System.IO Imports CoreTweet Module Module1 Sub Main() Dim t As Tokens = Tokens.Create("", "", "", "") ' 画像付きのツイートを送信する ' https://github.com/CoreTweet/CoreTweet/wiki/REST-API-%E3%82%92%E4%BD%BF%E3%81%86 ' → 楽だけど、非推奨メソッドになったっぽい 't.Statuses.UpdateWithMedia(Function(status) "", Function(media) New FileInfo("")) ' → 現在は以下のやり方かな? ' 画像をアップロードしてツイートする ' https://github.com/CoreTweet/CoreTweet/wiki/%E7%94%BB%E5%83%8F%E3%82%84%E5%8B%95%E7%94%BB%E3%82%92%E3%82%A2%E3%83%83%E3%83%97%E3%83%AD%E3%83%BC%E3%83%89%E3%81%97%E3%81%A6%E3%83%84%E3%82%A4%E3%83%BC%E3%83%88%E3%81%99%E3%82%8B%E6%96%B9%E6%B3%95 Dim m As MediaUploadResult = t.Media.Upload(New FileInfo("C:\aaa.png")) Dim s As Status = t.Statuses.Update(status:="初めてのツイート!", media_ids:=New Long() {m.MediaId}) End Sub End Module
- 回答としてマーク vpbei 2018年8月9日 17:45