发布网友 发布时间:2022-04-06 05:39
共2个回答
懂视网 时间:2022-04-06 10:00
下面由thinkphp框架教程栏目给大家介绍Thinkphp与vue联合开发中Thinkphp的配置问题,希望对需要的朋友有所帮助!
Thinkphp与vue联合开发中Thinkphp的配置问题:
1、Thinkphp默认返回json格式的数据
(1)全局设置 - 修改 Thinkphp 配置文件 config.php :
'default_return_type' => 'json',
default_return_type 属性的默认值为'html',改成'json'后,在控制器的方法中直接return出来的数据就是json格式了,全局配置对系统中的所有“操作”有效
(2)单独设置 - 在“操作”中通过:return json(array, 404)返回数据(第一个参数是数组或对象,第二个参数是状态码)。
return json(['name' => 'thinkphp','status' => '1'], 200);
输出的数据(全局与单独设置输出的结果相同):
{"name":"thinkphp","status":"1"}
2、vue请求跨域的问题
前后端分离的情况下,vue直接通过axios请求会遇到跨域的问题:No 'Access-Control-Allow-Origin' header is present on the requested resource.
需要在 “操作” 中设置请求头部
header('Access-Control-Allow-Origin: *')
直接复制粘贴到 “操作” 的第一行就可以了,就像这样:
再通过axios连接这个“操作”时,就不会提示跨域了。
热心网友 时间:2022-04-06 07:08
使用URL模式0,是可以把m=Index去掉的。因为没有m,那就用默认模块。 其他模式就不行了。 Dispatcher的getMole都是把第一个目录当成模块。
设置这个试试
'URL_MODEL' => '2', //URL模式