Twitter(X)のツイート取得APIの変更
takker.icon
変換されない。
2023/8/16 16:27:13 自分の環境だとCtrl + Shift + Vで貼り付けると変換されるyosider.icon
2023-08-20 されない基素.icondokudami.icon
埋込みが生きているのは確認済み
APIが変わったか?
はーん。tokenをつけないと何も帰ってこないようにコードが変わったのか
次はこのtokenを生成しているコードを特定する
見つけた
code:js
u = function (e) {
this.Tweet = function (e) {
return {
fetch: function (t, r) {
return e.get(
'tweet-result',
(0, n.Z) ({
}, t, {
token: c(o(s(t.id) / 1000000000000000 * a.PI))
t.idはtweet id
code:2.js
i = [
Number,
window.Math,
function (e) {
return e.toString(Math.pow(6, 2))
},
function (e) {
return e.replace(/(0+|\.)/g, '')
}
],
code:js
}),
r
).then(
(
function (e) {
return e &&
(e.id_str || 'TweetTombstone' === e.__typename) ? Promise.resolve(e) : Promise.reject(new Error('could not parse api response'))
}
)
)
}
}
}(e),
解読終了
code:ts
const token = (id: string): string =>
(parseInt(id) / 1000000000000000 * Math.PI)
.toString(Math.pow(6, 2))
.replace(/(0+|\.)/g, "");
✅テスト
$ ((id) => (parseInt(id) / 1000000000000000 * Math.PI).toString(Math.pow(6, 2)).replace(/(0+|\.)/g, ""))("1110439106041929729")
2owjpclbr6fになった
radix 省略可
数値を表現するために使われる基数を指定する、 2 から 36 までの整数です。既定値は 10 です。
何進数かということか
ちょっとまって!tokenに適当な文字列渡しても通っちゃう!
ガバすぎる……なんのためにtoken生成コードがあるんだよ……
草wogikaze.iconyosider.iconSummer498.icon