Javascript 否';访问控制允许原点';标题错误,但帖子仍然会通过
我有一个JavaScript函数,它执行一个简单的jQuery AJAX()请求: 现在。。。这是到brokerofice.com的HTTP帖子。Lead数据可以通过HTTP POST导入Brokerofice。端点URL=Javascript 否';访问控制允许原点';标题错误,但帖子仍然会通过,javascript,jquery,ajax,Javascript,Jquery,Ajax,我有一个JavaScript函数,它执行一个简单的jQuery AJAX()请求: 现在。。。这是到brokerofice.com的HTTP帖子。Lead数据可以通过HTTP POST导入Brokerofice。端点URL=https://www.brokeroffice.com/leads/leadImport.do。我正在从http://mycompanysite.com/leads/。注意,他们有https://和www,而我的没有 然而当我进入brokerofice.com时,我看到le
https://www.brokeroffice.com/leads/leadImport.do
。我正在从http://mycompanysite.com/leads/
。注意,他们有https://和www
,而我的没有
然而当我进入brokerofice.com时,我看到lead已成功发布到他们的数据库中,因此。。。尽管有这一警告:
XMLHttpRequest无法加载https://www.brokeroffice.com/leads/leadImport.do. 请求的资源上不存在“Access Control Allow Origin”标头。起源'http://mycompanysite.com因此,不允许访问。
请求通过了
问题是我必须多次在循环中处理这个请求,这样JavaScript错误就会阻止循环继续执行
我能做些什么?该标题阻止您查看服务器的响应(而不是发送请求) 问题是,我必须在循环中多次执行此请求 该JavaScript错误将阻止循环继续运行 执行 我能做什么
你能做什么?需要更改服务器的响应标头以允许跨源通信。如果您没有更改服务器的权限,那么您可能运气不好。该标题会阻止您查看服务器的响应(而不是发送请求) 问题是,我必须在循环中多次执行此请求 该JavaScript错误将阻止循环继续运行 执行 我能做什么
你能做什么?需要更改服务器的响应标头以允许跨源通信。如果您没有更改服务器的权限,那么您可能会运气不佳。正如@apsillers提到的,您可以发送请求,他们会到达那里。你就是无法得到回应 如果您需要阅读回复,您可以:
正如@apsillers提到的,你可以发送请求,他们就会到达那里。你就是无法得到回应 如果您需要阅读回复,您可以:
关于“尽管有此警告……它还是通过了”:同源策略阻止脚本读取跨源响应;它不会阻止您的浏览器发送跨源请求。我不明白您所说的“我必须在循环中多次执行此请求,以便JavaScript错误将阻止循环继续执行”是什么意思。您的意思是希望此请求运行多次,还是希望此请求运行多次(并且不希望)为了让它工作?@apsillers我想在一个循环上运行这个关于“尽管有这个警告…它通过了”:同一来源策略阻止您的脚本读取跨来源响应;它不会阻止您的浏览器发送跨源请求。我不明白您所说的“我必须在循环中多次执行此请求,以便JavaScript错误将阻止循环继续执行”是什么意思。您的意思是希望此请求运行多次,还是希望此请求运行多次(并且不希望)为了让它工作?@apsillers我想在一个循环上运行这个关于“尽管有这个警告…它通过了”:同一来源策略阻止您的脚本读取跨来源响应;它不会阻止您的浏览器发送跨源请求。我不明白您所说的“我必须在循环中多次执行此请求,以便JavaScript错误将阻止循环继续执行”是什么意思。您的意思是希望此请求运行多次,还是希望此请求运行多次(并且不希望)为了让它工作?@apsillers我想在一个循环上运行它,然后你可以丢弃错误消息。但是这很危险,因为如果你没有得到回复,你就无法判断请求是否成功,也就是说服务器是否收到了帖子。喂,先生?有响应吗?然后您可以放弃错误消息。但是这很危险,因为如果你没有得到回复,你就无法判断请求是否成功,也就是说服务器是否收到了帖子。喂,先生?有响应吗?然后您可以放弃错误消息。但是这很危险,因为如果你没有得到回复,你就无法判断请求是否成功,也就是说服务器是否收到了帖子。喂,先生?有什么反应吗?
function impLeads() {
var go_health_id = $(".sync-action").data("subscriber");
var customer_number = $(".sync-action").data("customer-number");
var lead_type = $(".sync-action").data("lead-type");
var person = {
lead_type: lead_type,
customer_number: customer_number,
subscriber_id: go_health_id,
first_name: "Daniel",
last_name: "Endo",
phone: "(937) 555-5555"
}
$.ajax({
type: "POST",
crossDomain: true,
dataType: "json",
data: person,
url: "https://www.brokeroffice.com/leads/leadImport.do",
cache: false,
success: function(html) {
$(".debug").show().html(html);
console.log('Leads imported for ' + go_health_id);
}
});
}