我想获取用户在Chrome应用程序中的IP地址。内容安全策略指令阻止我使用IPify等服务或ajax请求,例如:
$.ajax({
url: 'https://freegeoip.net/json/',
type: 'POST',
dataType: 'jsonp',
success: function(location) {
alert(location.ip);
}
});
错误消息为:
拒绝加载脚本'https://freegeoip.net/json/?callback=jQuery21304975464364979416_1442806213407&_=1442806213408‘,因为它违反了以下内容安全策略指令:"default-src 'self’blob: filesystem: chrome-extension-resource:“。请注意,没有显式设置'script-src‘,因此使用'default-src’作为备用。
谢谢,
编辑为了清晰:我正在寻找IP地址,因为它是从全球互联网上的服务器上看到的,而不是本地IP。
发布于 2015-09-21 12:10:01
好吧,一种可能的方法是使用Chrome API chrome.system.network.getNetworkInterfaces()。示例如下所示。
chrome.system.network.getNetworkInterfaces(function(interfaces){
console.log(interfaces.address);
});
在manifest.json
文件中,您可能需要像这样授予API的权限。
"permissions": [
"system.network"
]
https://stackoverflow.com/questions/32687033
复制相似问题