php - 跨源请求只支持协议(protocol)方案,怎么办?

标签 php html json jss

我无法向 php 发送信息,它被阻止了。

Cross origin requests are only supported for protocol schemes: http, data, chrome, chrome-extension, https.

我使用了不同的方法,只有三分之二的代码可以正常工作。

$(document).on('ready', function() {
    $('#loginAjax').click(function() {
        $.ajax({
            type: 'POST',
            url: 'prueba.php',
            dataType: 'json',
            data: { myusuario: "hola" },
            success: function(response) {
                $('#result').html(response);
            },
            error: function() {
                $("#result").html("no vas a aprobar");}
        });
    });

    $('#redRegistrar').click(function() {
        location.href = 'registro.html';
    });
});
<?php
header("Access-Control-Allow-Origin: *");
if ($_SERVER["REQUEST_METHOD"] == "POST") {
    $recibido = $_POST['myusuario'];
    echo json_encode( $recibido );
}
?>

我希望它说hola

最佳答案

看起来您正在尝试从 file:// URI 访问 prueba.php。 这可能是因为您直接在浏览器中打开了 HTML 文件,并且文件不支持跨源请求。

相反,您应该将带有 javascript 的 HTML 文件放在您的网络服务器中,然后访问该 URL。

例如,从你的错误猜测路径,你需要将你的HTML文件移动到C:/xampp/htdocs/app_bloqui/test.html,然后访问127.0.0.1/app_bloqui/test.html。这将意味着您将处于同一来源并且该请求将有效。

关于php - 跨源请求只支持协议(protocol)方案,怎么办?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57236932/

相关文章:

Java : How to map the json string returned by Oauth2 service to model class object

python - 如何解析 json 以获取数组中特定键的所有值?

php - 解释 Windows 上的 ImageMagick 和 CentOS linux 上的 ImageMagick 有什么不同?

php - Yii zii.widgets.CMenu 多级子菜单的 css

php - zend gdata 和谷歌电子表格未连接

javascript - Jquery .click 功能不起作用

Internet Explorer 中忽略的 HTML/CSS 表格高度

html - 完全相同的线性渐变线看起来不同

python - 如何使用 python wsgi 应用程序读取 Json 对象

php - 修复编译 magento 错误