- xml - AJAX/Jquery XML 解析
- 具有多重继承的 XML 模式
- .net - 枚举序列化 Json 与 XML
- XML 简单类型、简单内容、复杂类型、复杂内容
有很多关于如何使用 javascript 获取 http header 的问题,但由于某些原因,它们没有显示 HTTP_CF_IPCOUNTRY header 。
如果我尝试使用 php echo $_SERVER["HTTP_CF_IPCOUNTRY"];
,它会工作,所以 CF 工作得很好。
是否可以使用 javascript 获取此 header ?
最佳答案
@Quentin 的回答是正确的,适用于任何试图访问服务器 header 的 javascript 客户端。
但是,由于这个问题特定于 Cloudlfare,并且特定于在 HTTP_CF_IPCOUNTRY header 中正常获取 2 个字母的国家/地区 ISO,我相信我有一个最适合所问问题的解决方法。
下面是我在前端 Ember 上使用的代码摘录 App ,坐在 Cloudflare 后面......和清漆......和 fastboot......
function parseTrace(url){
let trace = [];
$.ajax(url,
{
success: function(response){
let lines = response.split('\n');
let keyValue;
lines.forEach(function(line){
keyValue = line.split('=');
trace[keyValue[0]] = decodeURIComponent(keyValue[1] || '');
if(keyValue[0] === 'loc' && trace['loc'] !== 'XX'){
alert(trace['loc']);
}
if(keyValue[0] === 'ip'){
alert(trace['ip']);
}
});
return trace;
},
error: function(){
return trace;
}
}
);
};
let cfTrace = parseTrace('/cdn-cgi/trace');
性能真的很棒,即使在调用其他 API 或函数之前,也不要害怕调用此函数。我发现它与从 Cloudflare 的缓存中检索静态资源一样快,有时甚至更快。您可以在 Pingdom 上运行配置文件来确认这一点。
关于javascript - 使用 javascript 获取 Cloudflare 的 HTTP_CF_IPCOUNTRY header ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32455180/
有很多关于如何使用 javascript 获取 http header 的问题,但由于某些原因,它们没有显示 HTTP_CF_IPCOUNTRY header 。 如果我尝试使用 php echo $
我是一名优秀的程序员,十分优秀!