始皇已更新接口,无需再建二号worker
原内容
原原内容
更新:由于始皇代码结构调整,之前直接设置cookie的方式不生效了,需将二号worker的代码更新为以下内容
const hostname = "https://new.oaifree.com";
async function getCookies(shareToken) {
const cookies = await fetch(`${hostname}/auth/login_token`, {
method: 'POST',
headers: { 'Content-Type': 'application/x-www-form-urlencoded' },
body: 'action=token&access_token=' + encodeURIComponent(shareToken),
})
.then(response => {
return response.headers.get('Set-Cookie');
})
return cookies
}
async function handleRequest(request) {
let url = new URL(request.url);
if (url.pathname === '/setcookie.html') {
const accessToken = url.searchParams.get('access_token');
if (accessToken) {
const cookies = await getCookies(accessToken);
const response = Response.redirect(url.origin, 302);
const newHeaders = new Headers(response.headers);
newHeaders.append("Set-Cookie", cookies);
const modifiedResponse = new Response(response.body, {
status: response.status,
statusText: response.statusText,
headers: newHeaders
});
return modifiedResponse;
}
}
return fetch(new Request(hostname + url.pathname, request));
}
addEventListener("fetch", (event) => {
event.respondWith(handleRequest(event.request));
});
有需要的话二号worker可以用始皇版反代:
反代后记得把proxied_domain同步更改为反代worker的地址