Php Chrome未向服务器提交POST请求
Chrome没有向我的公司提交我们内部使用的各种PHP应用程序的POST/GET表单请求,这让我遇到了麻烦。这似乎是从Chrome 76开始的。Firefox或IE没有出现这个问题,这很奇怪 提交表单时预期的行为是在Dev网络控制台中查看请求,同时等待服务器的响应。但在Chrome中,请求从未在网络控制台中发送或显示。选项卡中的Chrome进度轮始终逆时针旋转 我已经检查了服务器上的Apache请求日志,但它从未收到发送给它的请求,所以我认为它是客户端的东西,即Chrome 如果我尝试使用Postman手动提交表单,那么它将工作并发送预期的响应 我曾尝试使用JavaScript提交表单,但我看到了相同的行为。我尝试过改变表单的类型以及调整meta标记头,但没有改变 标题Php Chrome未向服务器提交POST请求,php,html,forms,post,Php,Html,Forms,Post,Chrome没有向我的公司提交我们内部使用的各种PHP应用程序的POST/GET表单请求,这让我遇到了麻烦。这似乎是从Chrome 76开始的。Firefox或IE没有出现这个问题,这很奇怪 提交表单时预期的行为是在Dev网络控制台中查看请求,同时等待服务器的响应。但在Chrome中,请求从未在网络控制台中发送或显示。选项卡中的Chrome进度轮始终逆时针旋转 我已经检查了服务器上的Apache请求日志,但它从未收到发送给它的请求,所以我认为它是客户端的东西,即Chrome 如果我尝试使用Pos
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=no">
<meta name="csrf-token" content="xxxx">
形式
用户名
密码
记得我吗
登录
有没有更好的方法在客户端调试表单提交?Chrome是否在发送HTTP请求之前进行了一些检查,而其他浏览器没有这样做,并且失败了?有没有办法完全重新加载/重置Chrome,以防设置错误?隐姓埋名模式应该在没有任何扩展的情况下加载,并且它的行为相同,因此我不认为它是导致问题的恶意扩展。在您的php服务器中在您的头文件上添加以下行
header('Access-Control-Allow-Origin: *');
应该在您希望接收post请求的所有页面中
header('Access-Control-Allow-Origin: *');
header("Access-Control-Allow-Credentials: true");
header('Access-Control-Allow-Methods: GET, PUT, POST, DELETE, OPTIONS');
header('Access-Control-Max-Age: 1000');
header('Access-Control-Allow-Headers: Content-Type, Content-Range, Content-Disposition, Content-Description');
当您从本地服务器向远程服务器发送post数据时,您需要在远程服务器上启用CORS-跨源资源共享
此代码应该适用于大多数情况,测试并告诉我它是否已解决。在您的php服务器中在您的头文件中添加以下行
header('Access-Control-Allow-Origin: *');
应该在您希望接收post请求的所有页面中
header('Access-Control-Allow-Origin: *');
header("Access-Control-Allow-Credentials: true");
header('Access-Control-Allow-Methods: GET, PUT, POST, DELETE, OPTIONS');
header('Access-Control-Max-Age: 1000');
header('Access-Control-Allow-Headers: Content-Type, Content-Range, Content-Disposition, Content-Description');
当您从本地服务器向远程服务器发送post数据时,您需要在远程服务器上启用CORS-跨源资源共享
这段代码应该适用于大多数情况,测试并告诉我问题是否解决。设置这些标题并在Apache中添加mod_headers CORS config设置,但仍然没有使用
method=“GET”进行更改
可能是post方法的chrome问题。您还可以检查控制台并告诉我它向您显示了什么吗?GET方法也不起作用。当试图通过JavaScript提交表单时,我正在打印到控制台,我看到$('#loginForm').submit()前后的print语句;但是请求从未被发送。没有打印错误我想是的。我已经更新到76.0.3809.132版(64位),问题已经解决了设置这些标题并在Apache中添加了mod_headers CORS config设置,但仍然没有使用method=“GET”
进行更改,可能是post方法的chrome问题。您还可以检查控制台并告诉我它向您显示了什么吗?GET方法也不起作用。当试图通过JavaScript提交表单时,我正在打印到控制台,我看到$('#loginForm').submit()前后的print语句;但是请求从未被发送。没有打印错误我想是的。我更新到76.0.3809.132版(64位),问题已经解决