thinkphp 设置了这些配置项,INDEX控制器就出问题了,求解!

发布网友 发布时间: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.

企业微信截图_15966910814958.png

需要在 “操作” 中设置请求头部

header('Access-Control-Allow-Origin: *')

直接复制粘贴到 “操作” 的第一行就可以了,就像这样:

企业微信截图_15966910933453.png

再通过axios连接这个“操作”时,就不会提示跨域了。

企业微信截图_15966911091830.png

热心网友 时间:2022-04-06 07:08

使用URL模式0,是可以把m=Index去掉的。因为没有m,那就用默认模块。 其他模式就不行了。 Dispatcher的getMole都是把第一个目录当成模块。
设置这个试试
'URL_MODEL' => '2', //URL模式

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com