我是 JavaScript 的新手,我正在嘗試在 Cloudflare Worker 上使用 JS 為 IFTTT 創建一個 Github API 網關(因為它無法修改標頭)。這是代碼:async function handleRequest(request) { var url = new URL(request.url) var apiUrl = 'https://api.github.com' + url.pathname var basicHeaders = { 'User-Agent': 'cloudflare', 'Accept': 'application/vnd.github.v3+json' } const { headers } = request const contentType = headers.get('content-type') const contentTypeUsed = !(!contentType) if (request.method == 'POST' && contentTypeUsed) { if (contentType.includes('application/json')) { var body = await request.json() if ('additionHeaders' in body) { var additionHeaders = body.additionHeaders delete body.additionHeaders } var apiRequest = { 'headers': JSON.stringify(Object.assign(basicHeaders,additionHeaders)), 'body': JSON.stringify(body), } } else { return new Response('Error: Content-Type must be json', {status: 403}) } const newRequest = new Request(apiUrl, new Request(request, apiRequest)) try { var response = await fetch(newRequest) return response } catch (e) { return new Response(JSON.stringify({error: e.message}), {status: 500}) } } else { var apiRequest = { 'headers': JSON.stringify(basicHeaders) } const newRequest = new Request(apiUrl, new Request(request, apiRequest)) var response = await fetch(newRequest) return response }}addEventListener('fetch', async (event) => { event.respondWith(handleRequest(event.request))})
TypeError:“RequestInitializerDict”上“headers”字段的類型不
POPMUISE
2023-03-24 17:02:39