我正在编写一个chrome扩展,其中javascript代码与我的后端进行对话。我的后端是通过一个可以通过GET url调用访问的端点公开的。
我面临的问题是,我无法访问一个目录来访问我的端点条目文件。我把文件复制到同一个目录,并试图获取数据,但它正在打印整个文件。
目录结构:
'Root
--backend
----api.php
--Chrome Extn
----resource.js
----popup.html
现在当我击中http:///api.php它给了我一个json,我希望它能作为javascript调用中的对象。由于它不是一个跨域文件,而是一个驻留在本地的文件,我使用了以下方式:
function getData() {
$.ajax({
type: "GET",
url: "../api.php" ,
success : function(data) {
console.log(data);
}
});
现在,由于失败,我将api.php复制到Chrome Extn。目录,但这只是在回显代码。
我所需要做的就是使用api.php中的数据并对其进行解析。
找到了一个解决方案。我在manifest.json 的权限中使用了外部URL
{
"manifest_version" : 2,
"name" : "app-name",
"description" : "app=desc",
"version" : "1.1.1",
"browser_action" : {
"default_icon" : "icon.png",
"default_popup" : "popup.html"
},
"permissions" : [
"tabs",
"bookmarks",
"activeTab",
"http://www.externalUrl.com/subdir"
],
"icons" : {
"16" : "16.png",
"24" : "24.png",
"128" : "128.png"
}
}