在Chrome中使用XMLHttpRequest获取URL查询
GET query to URL using XMLHttpRequest in Chrome
我正试图直接使用XMLHttpRequest检索url:
req = new XMLHttpRequest
req.onreadystatechange = ->
console.log req.readyState
if req.readyState == 1
console.log "sending..."
req.send
if req.readyState == 4
handler(req.response, req.status)
req.open("GET", info.srcUrl, true)
req.responseType = "arraybuffer"
但我从未看到对象转换到1
readyState之外。我错过了什么?
如果您试图从接收运行脚本的服务器以外的其他源检索任意资源,则很可能会遇到与跨站点脚本相关的安全问题。
除非在非常有限的情况下,您不能从任何其他网站检索资源,除非是为您当前查看的页面提供服务的网站。
有关说明,请参阅https://developer.mozilla.org/en-US/docs/Web/JavaScript/Same_origin_policy_for_JavaScript?redirectlocale=en-美国&重定向段塞=JavaScript%2FSame_origin_policy_for_JavaScript
对于我上面提到的有限情况,请参阅https://developer.mozilla.org/en-US/docs/HTTP/Access_control_CORS?redirectlocale=en-美国&重定向段塞=HTTP_access_control
此外,由于您似乎没有为XMLHTTPRequest提供错误处理程序,您很可能会错过错误消息,该消息会通知您请求失败的原因。
更新
关于XMLHTTPRequest的快速教程,包括如何处理onError事件,可以在https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest/Using_XMLHttpRequest?redirectlocale=en-美国&redirectslug=DOM%2FXMLHttpRequest%2Using_XMLHttpRequest
来自Ruby,我没有意识到req.send
和req.send()
之间有一个微妙但重要的区别。正如@RobW在评论中指出的那样,这个方法也不应该在事件处理程序中调用,而应该在代码的末尾调用。
- Firebase-登录时获取url
- 正在捕获.单击以获取URL
- Javascript获取url并通过添加到其中进行重定向
- 如何使用javascript从同一浏览器下的其他页面获取URL?有可能吗
- 如何从Beautiful Soup获取URL
- 我想从iframe获取url
- 使用Javascript获取URL参数
- 在 Javascript 中获取 URL-Parameter 不适用于 urlencode'&'
- 如何创建一个组件,我可以设置在 Angular 2 中的属性中获取 URL 数据
- 如何使用jQuery获取url的最后两个字符
- 使用jquery获取url参数
- 如何获取url中参数的真实值
- 使用表单和POST方法通过Javascript获取URL参数
- nodejs:在OutgoingMessage中获取url
- PHP-忽略换行符获取url
- 如何在Javascript中获取url的hashtag值和amp值
- 获取URL附加的复选框值
- 如何使用Javascript获取URL参数
- 如何使用Javascript获取URL参数
- 从2组单选按钮中获取url