Javascript 我可以向本地主机发出Ajax请求,但当我向web服务器发出请求时,我会使用MIME类型text/html不断得到CORB阻止的跨源响应。为什么?

Javascript 我可以向本地主机发出Ajax请求,但当我向web服务器发出请求时,我会使用MIME类型text/html不断得到CORB阻止的跨源响应。为什么?,javascript,php,ajax,Javascript,Php,Ajax,我制作了一个非常简单的PHP脚本: <?php echo date('H:i:s'); ?> <?php header('Access-Control-Allow-Origin: *'); ?> <?php echo date('H:i:s'); ?> …它成功了 然而,后来我使用了一个名为infinityfree的网站在线设置了一个PHP服务器,这样我就可以向它发出请求,我确实设置了服务器,服务器确实可以工作,但是,当我向它发出Ajax请求时,我会不断得

我制作了一个非常简单的PHP脚本:

<?php echo date('H:i:s'); ?>
<?php header('Access-Control-Allow-Origin: *'); ?>
<?php echo date('H:i:s'); ?>
…它成功了

然而,后来我使用了一个名为infinityfree的网站在线设置了一个PHP服务器,这样我就可以向它发出请求,我确实设置了服务器,服务器确实可以工作,但是,当我向它发出Ajax请求时,我会不断得到
访问控制允许源代码
错误,或者
跨源读取阻塞(CORB)已阻止跨源响应。。。使用MIME类型text/html。
错误

PHP脚本是相同的。我尝试添加
标题('Content-Type:application/json')但它不会改变任何东西

我尝试了几种方法来发出Ajax请求。这是我的代码:

$.ajax({
        type: 'GET',
        url: myurl,
        dataType: 'jsonp',
        contentType: 'application/json',
        success: function(data) {
          alert(data);
        },
        error: function() {
          alert("FAILED");
        }
      });
我尝试了各种组合。在
dataType
部分,如果我从'jsonp'中删除'p',它将获得
access control allow origin
错误,使用'p',我将获得
CORB
错误。我尝试更改
内容类型
,添加
访问控制
,但没有任何效果

谁能解释一下我做错了什么?请记住,我不是在学习PHP。我正在测试JS Ajax,但我需要设置自己的web服务器,因为我将进行浏览器扩展,这就是为什么我不能使用localhost


注意:如果您需要,这是我设置的免费web服务器,并向:
http://globaltime.epizy.com/clock.php

您收到一个CORB错误,因为您正在请求一个JSONP脚本并获取一个HTML文档。好的。。那么,我该怎么办?我尝试了
text/html
而不是
jsonp
,但仍然得到了一个错误。@昆汀我用
html
替换了
jsonp
,仍然得到了
No'访问控制允许源代码
错误。为什么我的问题结束了,而没有一个答案回答了我的问题?第二个建议的答案也与我的问题无关,因为它是关于本地主机的,我特别说过我的代码在本地主机上工作,但不在单独的域中。它不是关于本地主机的,这只是用于示例。如果要发出跨源请求,则需要设置
Access Control Allow origin
头(如果是90年代,则使用JSONP)。您的浏览器告诉您尚未设置它。因此,要么您所说的代码不是您实际拥有的代码,要么本地出现问题(比如您有一个旧的缓存版本),您需要对其进行调试(网络选项卡对此很有用)。无论哪种方式,解决方案都是一样的:确保响应上有标题(如dupe所说)