首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >GM.xmlHttpRequest `synchronous`选项不起作用

GM.xmlHttpRequest `synchronous`选项不起作用
EN

Stack Overflow用户
提问于 2019-08-27 00:46:33
回答 1查看 568关注 0票数 0

以下代码创建一个包含content undefined的警报

代码语言:javascript
复制
// ==UserScript==
// @name     Unnamed Script 188765
// @version  1
// @grant    GM.xmlHttpRequest
// @include  http*//markasoftware.com/*
// ==/UserScript==

alert(typeof GM.xmlHttpRequest({
  url: 'https://google.com',
  synchronous: true,
  method: 'GET',
}));

根据documentation,我希望synchronous选项能使调用返回一个响应object。但是,它的工作方式与异步调用相同;onload处理程序仍然有效。是否禁用了synchronous选项?有没有其他方式可以同步发起跨域请求?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-08-27 02:06:46

文档中说使用同步模式时返回值会有所不同的说法是错误的。只需设置一个在onload函数外部使用的变量。

代码语言:javascript
复制
let returnData;
GM.xmlHttpRequest({
  url: 'https://google.com',
  synchronous: true,
  method: 'GET',
  onload: function(response) {
    returnData = response;
  }
}));
alert(returnData);
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57661893

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档