我有一个用JavaScript编写的UI自动化脚本。从该脚本,如何使用cookie执行GET
请求到URL? E.g:
curl "https://example.com/path?a=123&b=cool" --cookie "c=12"
或者,如果您知道如何从JavaScript运行系统命令,就像您在Ruby中一样,那也可以。
答案 0 :(得分:1)
有关使用jQuery在浏览器中设置Cookie的信息,请参阅this thread。
答案 1 :(得分:1)
在查看HTTP GET request in JavaScript?并阅读"3.6.2. The setRequestHeader() method" in the W3C specs for XMLHttpRequest的第7步后,我想出了:
function httpGet(url, opts={}) {
var client = new XMLHttpRequest();
client.open('GET', url, false); // not async
if (opts.cookie) {
client.setRequestHeader('Cookie', opts.cookie);
}
client.send();
}
仅供参考,我忽略了响应,因为我正在删除资源(也许我应该验证正确的响应,以便我知道资源已被删除)。所以,是的,这应该是DELETE请求,但是他们将服务器配置为接受GET请求,而我无法控制它。