我的WOT api不工作在chrome扩展我开发
My WOT api not working in the chrome extension iam developing
我一直在为我的学术项目提交一个google chrome扩展,就像一个Adblocker。
所以在我的扩展每当你点击一个外部链接,它检查它是否是一个广告,如果它是一个广告,它显示一个警报,和在警报部分我想显示的我的Wot评级,为此目的,我已经获得了API密钥,我在过去的几天里一直在尝试显示。
所以当我调用我的WOT api链接时,它是
http://api.mywot.com/0.4/public_link_json?hosts=http://mathrubhumi.com/&调= process&关键= e4ae59175895506dde09ee2ce355f3a19797e445
将结果显示为:
过程({" mathrubhumi.com ":{"目标":"mathrubhumi.com"、"0":[86年38],"1":[86年38],"2":[86年38],"4":[84年,37岁 ] } } )
但是每当我尝试通过扩展调用API时,它说未定义。
这是我一直在尝试的Java脚本代码:
// click safe coded
var data;
var url = window.location.href;
if (!url.substring(0, 3) == "www" || !url.substring(0, 3) == "htt" || url.indexOf('ads') > 0)
{
getJSON('http://api.mywot.com/0.4/public_link_json?hosts=http://mathrubhumi.com/&callback=process&key=e4ae59175895506dde09ee2ce355f3a19797e445'), then(function (data) {
// alert('Your Site has Trust Score result of: ' + data.result);
result.innerText = data.result;
。});
谢谢。
我想为@wOxxOm的确切评论附加一些细节:
- 跨源XMLHttpRequest。基本上,如果您从内容脚本发送ajax,它将受到同源策略的限制。虽然扩展不受此限制,但只要您请求跨域权限。请参阅上面的链接,了解您需要添加的内容。
- 将ajax逻辑从内容脚本移动到后台页面后,如果需要在这两个页面之间传输数据(它们位于两个不同的上下文中),则需要查看Message Passing部分。
- 对于
Window.location
对象,查看此链接,您将发现Location.href
包含整个URL,因此需要protocol。
相关文章:
- chrome扩展中的navigator.geolocation.getCurrentPosition
- chrome扩展:尽管运行了at:documentidle,js脚本还是过早启动
- chrome扩展更改主机/域警告
- 如何在chrome扩展中重定向到html页面
- Chrome扩展没有't在重新加载之前考虑期权价值
- 如何通过自己获得Chrome扩展的用户反馈/错误报告
- 如何在chrome扩展中存储数据/结果,以及如何使用setTimeout使其只被调用一次
- 从选项页面更新chrome扩展清单权限
- 如何将chrome扩展功能移植到移动设备(特别是jquery和trello)
- Chrome扩展:遍历不同的页面并收集数据
- 未捕获的类型错误:无法读取属性'addEventListener'的null chrome扩展名
- 可以从Chrome扩展修改窗口对象吗
- 从popup.js|Chrome扩展访问DOM
- 从Chrome扩展名中的popup.html文件在background.js文件中运行一个函数
- 在Chrome扩展内部输出Google API调用
- 检查是否存在使用chrome扩展的javascript库
- 从Chrome扩展访问Google Cloud SQL数据库
- Chrome扩展,Chrome.tabs.query的结果未定义
- 为tweet构建chrome扩展
- 在chrome扩展中使用AJAX获取目录中的文件数