如何通过书签调用休息服务

blu*_*sky 1 javascript rest jquery google-chrome bookmarklet

我有一个接受URL参数的休息服务: myService/add?pageUrl=www.google.com

我正在尝试将其添加为书签,因此每当用户单击书签时,当前页面URL都会发送到我的休息服务.

这是我正在使用的javascript代码,但未调用该服务

javascript:function savePage() {
    window.open('myService/add?pageUrl=' + document.URL) 
    alert('Page saved');
}
savePage(); 
Run Code Online (Sandbox Code Playgroud)

我收到错误:

Uncaught SyntaxError:意外的标识符

如何修改上面的javascript,以便当我将代码添加到书签时,我的服务被调用,用户正在访问的当前URL被发送到服务?

Cer*_*rus 6

像这样创建bookmarklet:

javascript:(function(){/* your code here */})();  
Run Code Online (Sandbox Code Playgroud)

所以,在你的情况下:

javascript:(function(){window.open('myService/add?pageUrl='+document.URL)})();
Run Code Online (Sandbox Code Playgroud)

在该javascript:部分之后,您有一个自执行(匿名)函数:

(function(){})()
Run Code Online (Sandbox Code Playgroud)

那里的代码将被评估.
另外,请确保您没有遗漏任何分号(;).这些将破坏您在bookmarklet中的代码.