标签: xmlhttprequest

在控制台中抑制Chrome"无法加载资源"消息

我正在编写一个脚本,该脚本使用XMLHttpRequest来搜索由相对路径定义的文件,尝试解析该脚本可识别的其他相同域绝对路径的相对路径,然后尝试从已解析的文件中加载该文件网址.如果我遇到404,我只是尝试将文件相对路径解析为另一个绝对路径,然后再试一次.对于这个特殊的脚本,它完全可以遇到404-然而,我的控制台上到处都是"无法加载资源:服务器响应状态为404(未找到)消息,我想要抑制它们.

据我所知,没有错误可以捕获 - 错误情况由xmlHttpRequest.onreadystatechange处理程序处理,并且没有window.onerror.

有没有办法压制这些消息?

谢谢

javascript google-chrome xmlhttprequest google-chrome-devtools

36
推荐指数
3
解决办法
9703
查看次数

从XHR获取响应Content-Type标头

我想看看标题是text/html还是text/xml.如果它是text/html那么就出现了错误,我宁愿在继续之前抓住它.

javascript ajax jquery content-type xmlhttprequest

36
推荐指数
1
解决办法
4万
查看次数

从XHR请求获取BLOB数据

var xhr = new XMLHttpRequest();
xhr.open('GET', 'http://static.reddit.com/reddit.com.header.png', true);

xhr.responseType = 'arraybuffer';

xhr.onload = function(e) {
  if (this.status == 200) {
    var uInt8Array = new Uint8Array(this.response);
    var byte3 = uInt8Array[4]; 

    var bb = new WebKitBlobBuilder();
    bb.append(xhr.response);
    var blob = bb.getBlob('image/png'); 
    var base64 = window.btoa(blob);
    alert(base64);

  }
};

xhr.send();
Run Code Online (Sandbox Code Playgroud)

基本上,我在这里尝试做的是检索图像,并将其转换为base64.

通过阅读这里的评论,它说"当然.在将资源作为ArrayBuffer获取后,从中创建一个blob.一旦你有了,你可以直接对文件/ blob进行base64编码(window.btoa())或FileReader. readAsDataURL()".

然而,window.btoa()只是[对象blob],而我需要从图像中获取二进制文件,以便我可以将其转换为base64并使用数据将其显示在img标记中:

谁知道如何实现这一目标?

先感谢您!

javascript webkit blob xmlhttprequest

35
推荐指数
4
解决办法
8万
查看次数

为什么浏览器API会限制跨域请求?

XMLHttpRequests要求CORS跨域工作.类似于Web字体,WebGL纹理和其他一些东西.通常,所有新API似乎都有此限制.

为什么?

它很容易规避:所需要的只是一个简单的服务器端代理.换句话说,不禁止服务器端代码执行跨域请求; 为什么是客户端代码?这对任何人都有什么安全保障?

它是如此不一致:我不能XMLHttpRequest,但我可以<script src><link rel><img src><iframe>.什么限制XHR等甚至完成?

security http xmlhttprequest cross-domain cors

35
推荐指数
1
解决办法
1万
查看次数

如何在Angular 2中创建一个简单的JSONP异步请求?

我正在尝试将以下Angular 1代码转换为Angular 2:

$http.jsonp('https://accounts.google.com/logout');
Run Code Online (Sandbox Code Playgroud)

它必须是JSONP请求才能跳过CORS策略问题.

jsonp asynchronous xmlhttprequest typescript angular

35
推荐指数
4
解决办法
4万
查看次数

如何使用JavaScript创建Document对象

基本上这就是问题,如何在javascript中动态地从HTML字符串构造一个Document对象?

javascript dom specifications document xmlhttprequest

34
推荐指数
3
解决办法
5万
查看次数

使用setRequestHeader制作xmlhttprequest时,为什么无法设置cookie和set-cookie标头?

我想知道为什么不能使用setRequestHeader 设置cookie头.是否有任何特定原因或只是它们是由浏览器本身添加的,所以这些标题被禁用了?有安全问题吗?

- 编辑

我正在使用node.js并使用该xmlhttprequest模块.以下是测试代码:

var xhr = new XMLHttpRequest();
xhr.open('GET', url, true);
xhr.withCredentials = true;
xhr.setRequestHeader('Cookie', "key=value");
xhr.send(null);
Run Code Online (Sandbox Code Playgroud)

这里我需要设置cookie-header,因为node.js' xmlhttprequest没有显式添加cookie-header(就像浏览器一样).尝试这样做时,xmlhttprequest给出错误" Refused to set unsafe header".

虽然我找到了一个补丁并成功发送了cookie标题.但是想知道为什么禁用它来设置cookie-header?无论我在哪里阅读,发现它是数据完整性和安全性所必需的,但在这种情况下可以违反什么安全性,在哪里都没有提到.我想评估这个数据完整性问题是否对node.js应用程序有效,如果我使用我的补丁.

html javascript cookies xmlhttprequest node.js

34
推荐指数
3
解决办法
6万
查看次数

如何进行跨域请求

如您所知,Web浏览器的安全性不允许发出跨域请求.我读了一本书,说只有在你可以将文件放在服务器上时才应该使用XMLHTTPRequest(意味着你要加载到同一个请求域的页面).如果你不能 - 你应该寻找替代方案.

我的问题是:

  1. 什么是XMLHTTPRequest的跨域替代方案?
  2. WebSockets怎么?此技术是否允许跨域请求?

编辑: 我还不清楚......

例如,我从www.domain1.com拉取我的页面,我需要从www.domain2.com请求javascript .因此,拉出的页面应包含以下内容:

<script src="www.domain2.com/script.js"></script>
Run Code Online (Sandbox Code Playgroud)

避免跨域限制.

我可以使用JSONP,请求看起来像:http://ww.domain1.com/?callback = someFunction.js

但是:是不是一样?我只是从另一个域中拉js!它是否避免跨域限制?

javascript xmlhttprequest cross-domain websocket

34
推荐指数
2
解决办法
17万
查看次数

使用Chrome开发工具查找XMLHttpRequest的来源

我正在尝试调试一个不是我编写的Web应用程序.发生了一个失败的XMLHttpRequest:

XMLHttpRequest cannot load ... No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin '...' is therefore not allowed access. 
Run Code Online (Sandbox Code Playgroud)

有没有办法,最好使用Chrome开发者工具,找到这个电话的来源?

javascript debugging xmlhttprequest google-chrome-devtools

34
推荐指数
1
解决办法
5729
查看次数

如何在chrome扩展中发送HTTP GET请求?

我正在使用chrome扩展,它使用GET方法发送HTTP请求.

如何使用值发送www.example.com参数?par0

www.example.com?par=0
Run Code Online (Sandbox Code Playgroud)

(服务器读取参数par并做一些事情)

我找到了这篇文章,谈论了Cross-Origin XMLHttpRequest.但我不知道他们的例子如何帮助我.

javascript google-chrome get xmlhttprequest google-chrome-extension

34
推荐指数
1
解决办法
4万
查看次数