Hypesquadの取得画面が消えた!?
筆者が確認したところによると、discordのアップデートでHypesquadを取得する画面が消えていました。ですが、APIは生きているようでJavaScriptを使えば取得や削除ができるということがわかりました。
1. トークンの取得方法
この記事ではトークンを使うのでその取得方法も解説します。
まず、ブラウザでdiscordにログインしてください。
ログインしたら、F12などで開発者ツールを開いたあと、ネットワークタブを開いてください。
開けたら適当な鯖でメッセージを送信してください。そうするとXHRとしてPOSTされたのが確認できるので、そのPOSTをダブルクリックしてAuthorizationと書かれたのを見つけてください。
見つけたら、Authorizationにある値をコピーしてください。これは後ほど使います。
2. Hypesquadバッジを取得/削除する
discordで開発者ツールを開いたあと、コンソールタブを開いてください。
コンソールタブを開くと警告が表示されますが、これはdiscordが不正なコードからユーザーを守る予防策なので気にしないでください。
Hypesquadバッジを取得する場合は以下のコードをコピペしてください。
house_idと書かれたところの数字を好きなものに変更します。
1はBravery、2はBrilliance、3はBalanceです。これ以外のものだとエラーが出る可能性があります。
let house_id = 1;
fetch("https://discord.com/api/v9/hypesquad/online", {
method: "POST",
headers: {
"Content-Type": "application/json",
"Authorization": "ここに先程のトークンを入れてください"
},
body: JSON.stringify({ house_id: house_id })
}).then(response => {
if (response.ok) {
console.log(":white_check_mark: 正常に完了しました");
} else {
response.text().then(text => console.error(":x: エラーが出ました:", text));
}
});
Hypesquadバッジを削除する場合は以下のコードをコピペしてください。
fetch("https://discord.com/api/v9/hypesquad/online", {
method: "DELETE",
headers: {
"Authorization": "ここに先程のトークンを入れてください"
}
});
コピペしてトークンを入れることができたらEnterで送信してください。
コピペするときに警告が出ることがありますが、そのときはブラウザの指示に従いコピペができるようにしてください。
これで無事、Hypesquadバッジを取得/削除できたはずです。プロフィール欄を見て正常に取得/削除できたのを確認したら作業は終了です。
おわり
今回Hypesquadバッジを取得する画面が消えていましたが、ブラウザからJavaScriptを送信するとこでこの問題を解決することができました。
今後この記事で紹介した方法がいつ利用できなくなるかわからないので、はやめに試しておくといいかもしれません。