为了账号安全,请及时绑定邮箱和手机立即绑定

axios使用x-www-form-urlencoded,POST表单PHP提示过时

axios使用x-www-form-urlencoded,POST表单PHP提示过时

叮当猫咪 2018-11-20 12:14:57
返回结果Deprecated: Automatically populating $HTTP_RAW_POST_DATA is deprecated and will be removed in a future version. To avoid this warning set 'always_populate_raw_post_data' to '-1' in php.ini and use the php://input stream instead. in Unknown on line 01 如下的js会报过时axios.post('/api/code/create', this.formItem)2 如下的js不会报错axios.post('/api/code/create', window.qs.stringify(this.formItem))但是使用方法 2 的方式,this.formItem中的boolean数据会变成 "True" / "False" 导致存入数据库时 mysql 中字段类型为bool的字段无法将"True" 存为对应的 1 ,而始终是0不想用修改php.ini这种方式,我使用的laravel5.2 获取数据的代码Input::all();该如何又避免报错,又能正确存储 ? 如果使用php://input 的方式,该如何修改?
查看完整描述

1 回答

?
www说

TA贡献1775条经验 获得超8个赞

不是 POST 表单过时。你是用的软件做的翻译吗?

Deprecated: Automatically populating $HTTP_RAW_POST_DATA is deprecated and will be removed in a future version.

这句话的意思是 $HTTP_RAW_POST_DATA 常量过时了,并且会在下一个版本中移除。

但是这个版本还有,这是一个警告

后面给出了解决方案。

2 种:

  • 在 php.ini 配置文件种,把 always_populate_raw_post_data 设置为 -1

  • 不要使用 $HTTP_RAW_POST_DATA,而是使用 php://input 代替。


查看完整回答
反对 回复 2018-12-21
  • 1 回答
  • 0 关注
  • 440 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信