使用axios发送请求,遇到会发两次的状况

在学习php&mySQL的过程当中,前端nuxt用(vue官方推荐的)axios发送post请求,以实现向数据库插入页面提交数据的功能。php

发现功能是实现了,但数据库中表的数据是这样的前端

很莫名其妙的多出空行,因为是初学者,费了好长时间找是否是本身php链接数据库的代码出了什么问题,但并无发现疏漏。vue

因而找回前端,肯定axios请求只触发了一次后,看了下浏览器控制台network,发现每次点击提交都会出现2次请求,对比一下发现第一次请求是这样的ios

下边的login.php才是正常的post请求。那么本着不懂就要问的不要脸精神,去网上找答案:数据库

http://www.javashuo.com/article/p-qpapjiym-kr.htmlaxios

写得很明白,复杂请求,就会自动进行一次预请求,和咱们不要紧。那么尝试解决这个问题:php中作一下判断浏览器

1 if (!$_SERVER['REQUEST_METHOD']=== 'POST') {
2     die('不是post请求忽略');
3 }

本身是个菜鸟,看php链接数据库的写法是这样的:post

就给die()方法也拿过来试一哈,结果不出意料的失败了。因而接着找:学习

http://www.javashuo.com/article/p-mpeiohim-ep.htmlspa

写得缘由是同样的,但这个给出了解决的代码:

1 if(strtoupper($_SERVER['REQUEST_METHOD'])== 'OPTIONS'){
2     echo 'options请求,已忽略。';
3     exit; 
4 }

亲测有效,真是感谢两位素未谋面的朋友。虽然本身加上去的输出语句并无打印出来(笑cry),但数据库中的数据已经彻底正常:

相关文章
相关标签/搜索