Javascript Chrome扩展与RESTWeb服务通信
我是chrome扩展的新手,我正在开发一个扩展,它将与我的RESTWeb服务通信。我的RESTWeb服务将返回一个json字符串。我想做的是调用我的web服务,获取json响应 目前我的background.js中有以下内容:Javascript Chrome扩展与RESTWeb服务通信,javascript,web-services,google-chrome-extension,Javascript,Web Services,Google Chrome Extension,我是chrome扩展的新手,我正在开发一个扩展,它将与我的RESTWeb服务通信。我的RESTWeb服务将返回一个json字符串。我想做的是调用我的web服务,获取json响应 目前我的background.js中有以下内容: chrome.browserAction.onClicked.addListener(function(tab) { chrome.tabs.getSelected(null,function(tab) { var link = tab.url;
chrome.browserAction.onClicked.addListener(function(tab) {
chrome.tabs.getSelected(null,function(tab) {
var link = tab.url;
alert(link);
});
});
我的计划是,当用户单击图标扩展时,当前选项卡url将发送到我的web服务,它将得到json响应
我的问题是,在C#中执行类似于webclient.downloadstring
的代码或语法是什么?或者如何与web服务通信?
您正在寻找的API称为XMLHttpRequest
(也称为“AJAX”)。有关更多信息,请阅读位于的文档
下面是一个例子:
chrome.browserAction.onClicked.addListener(函数(选项卡){
var link=tab.url;
var x=新的XMLHttpRequest();
x、 打开('获取','http://example.com/?whatever="链接",;
x、 onload=函数(){
警报(x.responseText);
};
x、 send();
});
注意。XMLHttpRequest
API是异步的。这意味着您不能执行以下操作:
。。。
var结果;
x、 onload=函数(){
结果=x.responseText;
};
x、 send();
警告(结果);//行为不像你期望的那样!
我想一切都在权限范围内
我试过密码,但似乎没有反应。我希望警报消息应该会弹出(虽然我用字符串消息替换了它),但不会弹出。这是什么权限?添加我看到它处理远程服务器中的CORS权限(HTTP头)。它必须给予所有客户适当的权利,以及你的Chrome扩展。这对于浏览器中的所有AJAX连接都是通用的。
{
"manifest_version": 2,
"name": "AppuntiVari.net - Agenda events",
"description": "AppuntiVari.net - Agenda events",
"version": "1.0",
"browser_action": {
"default_icon": "icon.png",
"default_popup": "popup.html"
},
"permissions": ["tabs", "http://appuntivari.net/*"],
"options_page": "options.html",
"homepage_url": "http://appuntivari.net",
"background": { "scripts": ["js/jquery-1.10.2.js",
"js/jquery-ui-1.10.4.custom.js","background.js","popup.js"] },
"web_accessible_resources": [
"48.png"
],
"icons": {"16": "16.png", "48": "48.png", "128": "128.png"}
}
$.ajax({
url: "http://appuntivari.net/MyServiceAPI-portlet/
api/secure/jsonws/agenda/get-events-byIdUser/id_user/"+id_user,
type: "GET",