if (blocked_region.includes(region)) { response = newResponse('Access denied: WorkersProxy is not available in your region yet.', { status: 403 }); } elseif (blocked_ip_address.includes(ip_address)) { response = newResponse('Access denied: Your IP address is blocked by WorkersProxy.', { status: 403 }); } else { let method = request.method; let request_headers = request.headers; let new_request_headers = newHeaders(request_headers);
let original_response = awaitfetch(url.href, { method: method, headers: new_request_headers })
let original_response_clone = original_response.clone(); let original_text = null; let response_headers = original_response.headers; let new_response_headers = newHeaders(response_headers); let status = original_response.status;
asyncfunctionreplace_response_text(response, upstream_domain, host_name) { let text = await response.text()
var i, j; for (i in replace_dict) { j = replace_dict[i] if (i == '$upstream') { i = upstream_domain } elseif (i == '$custom_domain') { i = host_name } if (j == '$upstream') { j = upstream_domain } elseif (j == '$custom_domain') { j = host_name }
let re = newRegExp(i, 'g') text = text.replace(re, j); } return text; } asyncfunctiondevice_status(user_agent_info) { var agents = ["Android", "iPhone", "SymbianOS", "Windows Phone", "iPad", "iPod"]; var flag = true; for (var v = 0; v < agents.length; v++) { if (user_agent_info.indexOf(agents[v]) > 0) { flag = false; break; } } return flag; }