注意:所有图片都是动态获取,即不能取出被删除作品的图片.
一般:
反代了pixiv.cat
的反代,大众喜闻乐见的形式:
https://pximg.hakurei.cc/
PID-
图号(可选).
jpg|png|gif
按照cat
的说明,图号下标从1开始,且只有一张图时连同前方-
必须略去,结尾格式对实际响应不起决定作用.
例如
https://pximg.hakurei.cc/71403147.png
https://pximg.hakurei.cc/80347715-9.png
稍微Pro一点:
适用于官方api返回值的替换,请自行查找各段含义吧.
https://i.pximg.net/img-original/img/2018/10/29/16/58/24/71403147_p0.png
(返回403)
改为
https://pximg.hakurei.cc/img-original/img/2018/10/29/16/58/24/71403147_p0.png (200)
pixiv.js.org
提供的ajax接口:
这部分的行为等请参考pixiv.js.org源码与文档.
Cloudflare pages:
_worker.js
xexport default {
async fetch(request, env) {
let url = new URL(request.url);
const requestPath = url.pathname;
url.hostname = "i.pximg.net";
if (requestPath == '/') {
const asset = await env.ASSETS.fetch(request.url)
return asset
}
if (requestPath.startsWith('/ajax/')) {
url.hostname = "pixiv.js.org"
}
if ( //短格式直接转到cat
requestPath.split('/').length === 2 &&
['.jpg', '.png', '.gif'].some(ext => requestPath.endsWith(ext))
) {
url.hostname = "pixiv.cat";
}
let new_request = new Request(url, request);
let response = await fetch(new_request, {
headers: {
'Referer': 'https://www.pixiv.net/',
'User-Agent': 'Cloudflare Workers'
}
});
response = new Response(response.body, response);
response.headers.set('Access-Control-Allow-Origin', '*');
return response;
}
};
PID:81554929 P1.
(c) 2022 薄利神社 ,Powered by Cloudflare Pages.