业务经理

微信扫描以上二维码

028-61286886

在线咨询

迅睿框架 版主:迅睿框架研发组
插件函数文件init.php里,curl代码的封装函数,一直连接不上,接口返回403
类型:迅睿CMS 更新时间:2026-02-01 11:38:45 自定义函数

请问一下,在插件自定义函数文件init.php里,我写了一个链接接口的curl代码的封装函数,但是一直连接不上,接口返回一直是403;

但是我把这个init.php的curl代码的封装函数文件放在网站根目录里执行,确实是可以连接上接口,运行是正常的,可以获取到数据。


请问这是怎么回事呢?在插件系统里连接不上,但是在网站根目录运行确实正常的。



下面是,插件自定义函数文件写的代码运行结果,报错截图,一直报403错误。


image


下面是,函数文件放在网站根目录里执行,确实是可以连接上接口,可以获取到数据,是正常的。

image



下面是curl代码截图:

image


大佬们,请问这是怎么回事呢?

回帖
  • 开源社区创始人
    #1楼    开源社区创始人
    2026-02-01 09:58:14
    Chrome 0
    这个不好判断,要在程序里面做断点,断点是哪段代码输出的403才行,需要在线调试才行
  • 蓝色强
    #2楼    蓝色强
    2026-02-01 10:03:46
    Chrome 0
    Init.php首字母大写
  • 青橙
    #3楼    青橙
    2026-02-01 10:07:20
    Chrome 0
    @蓝色强 是的,文件名没错
  • 小波工作室
    #4楼    小波工作室
    2026-02-01 10:08:50
    Chrome 0
    要在源码里面找才行了
  • 青橙
    #5楼    青橙
    2026-02-01 10:10:43
    Chrome 0
    @开源社区创始人 那就是说系统这边curl没有特殊的封装,函数文件里curl是可以正常运行的,可能是有其他原因影响了,是吗
  • 开源社区创始人
    #6楼    开源社区创始人
    2026-02-01 10:14:01
    Chrome 0
    这个不好说,要断点程序逻辑,多exit输出,检查是哪里输出的 403
  • 青橙
    #7楼    青橙
    2026-02-01 10:14:56
    Chrome 0
    复@小波工作室 要在源码里找,我有点没明白这个是什么意识,是系统源码里找,还是我的封装函数代码里找,这个curl接口代码应该是很经常用的吧,不应该只有我一个人遇到吧,其他人是怎么解决的呢,
  • 榜一大哥
    #8楼    榜一大哥
    2026-02-01 10:15:07
    Chrome 0
    毕竟是开源的,程序瞄点输出调试找一找
  • 阿白同学
    #9楼    阿白同学
    2026-02-01 10:16:56
    Chrome 0
    社区里面搜索下有没有有人遇到过这种问题呢,还是要优先排查源码啊
  • 青橙
    #10楼    青橙
    2026-02-01 10:21:20
    Chrome 0
    复@阿白同学 我社区搜了,没有人问这个,还有就是源码没问题啊,因为我把代码放在根目录是正常运行的,是可以出结果的,
  • 青橙
    #11楼    青橙
    2026-02-01 10:24:31
    Chrome 0
    复@榜一大哥 我也想调试啊,可是这个是接口,没链接上只报一个403拒绝访问,连接口报错都没有,代码就这几行,代码放在根目录是可以正常运行,说明参数和格式是对的,所以现在是不知道什么原因导致接口连接不上。代码加起来不到10行,3行参数是对的,6行curl,curl代码网上都是照抄的一摸一样,
  • 优速开发工作室
    #12楼    优速开发工作室
    2026-02-01 10:24:36
    Chrome 0
    先做断点排查吧,用官方的思路排查下,不在线调试是看不出来原因的,写程序还是得多在线调试才行
  • Chien
    #13楼    Chien
    2026-02-01 10:43:24
    Chrome 0
    你这个不断点不行的
  • 青橙
    #14楼    青橙
    2026-02-01 10:53:31
    Chrome 0
    复@开源社区创始人
    image
    我就这几行代码,前面几行参数肯定没问题,后面几行是curl,运行到$response = curl_exec($ch);就是返还403,打印他的结果就是403,前面的都断点没反应,打印$response结果就是403
  • 青橙
    #15楼    青橙
    2026-02-01 10:55:07
    Chrome 0
    复@青橙
    image
    运行到$response = curl_exec($ch);断点打印的结果
  • 开源社区创始人
    #16楼    开源社区创始人
    2026-02-01 11:28:57
    Chrome 0
    我只能指点你这么多了啊,你要在程序里面断行输出啊,贴代码也没有用啊,重点在Fcms目录和System目录做断点
  • 优速开发工作室
    #17楼    优速开发工作室
    2026-02-01 11:32:07
    Chrome 0
    有可能是curl写法有问题,要远程来调试一下才行,这样很难判断
  • 榜一大哥
    #18楼    榜一大哥
    2026-02-01 11:35:07
    Chrome 0
    实在不行付费找官方技术人员吧
  • 王兴业
    #19楼    王兴业
    2026-02-01 11:38:45
    Chrome 0
    😰 这个要远程调试才能定位到问题,看代码看不出来