何が起こったか?
2023/11/28、X(旧Twitter)の一部のシェアリンクが動かなくなりました。
一例として以下のリンクをXログイン済みのブラウザで開いてみてください。
https://twitter.com/share?text=helloworld&url=https%3A%2F%2Fgoogle.com
すると以下のような画面が出てきます。
謎のCSSが文字として表示されてしまっている上、テキストが空の投稿画面が出てきてしまいました。
原因
先ほどのページのURLは以下のようになっています。
https://twitter.com/intent/tweet?text=helloworld&url&%23x3D;https%3A%2F%2Fgoogle.com
このように/shareに飛ぶと、/intent/tweetにリダイレクトで飛ばすという処理がX(旧Twitter)側でなされているようです。今まではここが正しく動いていたはずなのですが、少なくとも本日2023/11/28時点では本来エンコードされるべきでない=や&などもエンコードされてしまい、正しいシェアページに飛べなくなってしまいました。
直し方
リダイレクトが壊れているので、リダイレクトさせない(直接リダイレクト先に飛ばす)ようにすれば治ります。
https://twitter.com/intent/tweet?text=helloworld&url=https%3A%2F%2Fgoogle.com
以上です。無事正しく内容が入力された状態で開きました🎉
まとめ
明らかにX(旧Twitter)の落ち度ですが、影響範囲がかなり大きいのでみなさん注意しましょう。
なお主要メディアのシェアボタンはすでに正しく飛ぶ方のリンクになるようになっているようでした。
もし過去にTwitterシェアボタンを実装したなぁという方がいれば一度コードでtwitter.com/shareを検索してみることをおすすめします。
p.s.
Twitterの方が呼びやすいのでいつか戻って欲しいです笑