soptify
本身はブロックされていませんが、open.spotify.com
にはアクセスできません。これにより、埋め込まれたコード内の open.spotify.com
が読み込まれず、表示されません。open.spotify.com
の代替として、オンラインでの再生が可能です。
以下は例です。
Workers
と Pages
に入る
Workers を作成し、以下のコードを追加します。
addEventListener('fetch', event => {
event.respondWith(handleRequest(event.request));
});
async function handleRequest(request) {
const url = new URL(request.url);
url.hostname = 'open.spotify.com';
const headers = new Headers(request.headers);
const response = await fetch(url.toString(), {
method: request.method,
headers: headers,
body: request.body,
});
const responseHeaders = new Headers(response.headers);
return new Response(response.body, {
status: response.status,
statusText: response.statusText,
headers: responseHeaders,
});
}
Workers をカスタムドメインにバインドします。設定-トリガー-カスタムドメイン
(デフォルトの Workers ドメインはブロックされていて使用できません)
これで完了です。これは通常の CF Workers のリバースプロキシの手順であり、Spotify の埋め込みリンクのドメインをバインドしたものです。