我正在<iframe>
我的HTML页面中加载一个并尝试使用Javascript访问其中的元素,但是当我尝试执行我的代码时,我收到以下错误:
SecurityError: Blocked a frame with origin "http://www.<domain>.com" from accessing a cross-origin frame.
Run Code Online (Sandbox Code Playgroud)
你能帮我找一个解决方案,以便我可以访问框架中的元素吗?
我正在使用此代码进行测试,但徒劳无功:
$(document).ready(function() {
var iframeWindow = document.getElementById("my-iframe-id").contentWindow;
iframeWindow.addEventListener("load", function() {
var doc = iframe.contentDocument || iframe.contentWindow.document;
var target = doc.getElementById("my-target-id");
target.innerHTML = "Found it!";
});
});
Run Code Online (Sandbox Code Playgroud) 我使用ngResource在Amazon Web Services上调用REST API时收到此错误:
XMLHttpRequest无法加载 http://server.apiurl.com:8000/s/login?login=facebook.对预检请求的响应未通过访问控制检查:请求的资源上不存在"Access-Control-Allow-Origin"标头.原产地" :HTTP //本地主机,因此"是不允许访问. 错误405
服务:
socialMarkt.factory('loginService', ['$resource', function($resource){
var apiAddress = "http://server.apiurl.com:8000/s/login/";
return $resource(apiAddress, { login:"facebook", access_token: "@access_token" ,facebook_id: "@facebook_id" }, {
getUser: {method:'POST'}
});
}]);
Run Code Online (Sandbox Code Playgroud)
控制器:
[...]
loginService.getUser(JSON.stringify(fbObj)),
function(data){
console.log(data);
},
function(result) {
console.error('Error', result.status);
}
[...]
Run Code Online (Sandbox Code Playgroud)
我正在使用Chrome,我不知道还有什么可以解决这个问题.我甚至将服务器配置为接受来自源的头文件localhost
.
我正在构建一个Web API.我发现每当我使用Chrome进行POST,GET到我的API时,总会在真实请求之前发送OPTIONS请求,这非常烦人.目前我让服务器忽略任何OPTIONS请求.现在我的问题是发送OPTIONS请求以加倍服务器负载是什么好事?有没有办法完全阻止浏览器发送OPTIONS请求?
我正在Ajax.request
使用Sencha Touch 2应用程序(包装在PhoneGap中)创建一个远程PHP服务器.
服务器的响应如下:
XMLHttpRequest无法加载http://nqatalog.negroesquisso.pt/login.php.原产地
http://localhost:8888
不被访问控制允许来源允许的.
我该如何解决这个问题?
Python的http.server(或Python的SimpleHTTPServer)是从命令行提供当前目录内容的好方法:
python -m http.server
Run Code Online (Sandbox Code Playgroud)
但是,就网络服务器而言,它非常低调......
它表现得好像是单线程的,并且在使用RequireJS加载JavaScript AMD模块时偶尔会导致超时错误.加载一个没有图像的简单页面可能需要五到十秒钟.
什么是更快的替代方案,同样方便?
Chrome(或任何其他webkit浏览器)在使用Facebook API时会抛出大量这些"不安全的JavaScript尝试使用URL访问框架...".
它不会干扰实际操作,但它确实使javascript控制台基本上无法使用.
我想知道是否有办法在控制台中专门抑制这些错误?或者如果有其他解决方案你们可以想到,我会非常感激.
谢谢.
我有一个HTML页面,上面有一个按钮.当我点击该按钮时,我需要调用Rest Web Service API?我试着到处搜索.毫无头绪.有人可以给我一个领导/ Headstart吗?非常感谢
我和HERE的情况相同
要解决这个问题,我必须在"--allow-file-access-from-files"模式下使用Chrome启动html文件.我多次尝试后续步骤,但它不起作用.
chrome --allow-file-access-from-files file:///C:/test%20-%203.html
我正在开发一个内部Web应用程序.在IE10中,请求工作正常,但在Chrome中,所有AJAX请求(有很多)都是使用OPTIONS发送的,而不是我给出的任何定义的方法.从技术上讲,我的请求是"跨域".该站点在localhost:6120上提供,我正在向AJAX请求的服务是在57124. 这个关闭的jquery错误定义了问题,但不是真正的修复.
如何在ajax请求中使用正确的http方法?
编辑:
这是在每个页面的文档加载中:
jQuery.support.cors = true;
Run Code Online (Sandbox Code Playgroud)
每个AJAX都是类似的:
var url = 'http://localhost:57124/My/Rest/Call';
$.ajax({
url: url,
dataType: "json",
data: json,
async: true,
cache: false,
timeout: 30000,
headers: { "x-li-format": "json", "X-UserName": userName },
success: function (data) {
// my success stuff
},
error: function (request, status, error) {
// my error stuff
},
type: "POST"
});
Run Code Online (Sandbox Code Playgroud) 我正在尝试获取新闻网站的Feed.我以为我会使用google的feed API将feedburner Feed转换为json.以下网址将以json格式从Feed返回10个帖子.http://ajax.googleapis.com/ajax/services/feed/load?v=1.0&num=10&q=http://feeds.feedburner.com/mathrubhumi
我使用以下代码来获取上面的url的内容
$.ajax({
type: "GET",
dataType: "jsonp",
url: "http://ajax.googleapis.com/ajax/services/feed/load",
data: {
"v": "1.0",
"num": "10",
"q": "http://feeds.feedburner.com/mathrubhumi"
},
success: function(result) {
//.....
}
});
Run Code Online (Sandbox Code Playgroud)
但它没有工作,我收到以下错误
XMLHttpRequest无法加载 http://ajax.googleapis.com/ajax/services/feed/load?v=1.0&num=10&q=http%3A%2F%2Ffeeds.feedburner.com%2Fmathrubhumi.请求的资源上不存在"Access-Control-Allow-Origin"标头.原产地" :HTTP //本地主机,因此"是不允许访问.
我该如何解决?
javascript ×7
ajax ×4
cors ×4
jquery ×3
cross-domain ×2
html ×2
http ×2
command-line ×1
facebook ×1
httpserver ×1
iframe ×1
json ×1
opengraph ×1
options ×1
rest ×1
web-services ×1
webkit ×1