微信小程序给 thinkphp后端发送请求出现错误 Wrong number of segments 问题的解决 【踩坑记录】

这篇具有很好参考价值的文章主要介绍了微信小程序给 thinkphp后端发送请求出现错误 Wrong number of segments 问题的解决 【踩坑记录】。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

微信小程序代码部分

 //给后端接口发送一个json请求,并且得通过token鉴权
 ToUpdatePwd(){
       wx.request({
         url: 'http://robin.com/User',
         method:'POST',
         header:{
            'content-type': 'application/json', 
            'token':store.token
        },
         success(res){
             console.log(res.data)
         }
       })
    },

PHP后端部分

 public function handle($request,Closure $next)
    {
        //第一步先取token
        $token = $request->header('token');
        // 先判断token是否为空
        if(!$token){
            return  json(['error_code'=>999,'msg'=>'token不存在','data'=>''],440);
        }
        // token 存在 再使用jwt进行校验token
        $res = (new TokenServer())->checkToken($token);
        if ($res['code'] != 1 ){
            return json(['error_code'=>999,'msg'=>$res['msg'],'data'=>''],400);
        }
        $request->uid = $res['data']->uid;
        return $next($request);
    }

错误显示

微信小程序给 thinkphp后端发送请求出现错误 Wrong number of segments 问题的解决 【踩坑记录】,微信小程序,# ThinkPhP6,微信小程序,小程序,ThinkPHP

这里提示 wrong number of segements , 百度了一下说这个问题是 后端解码token缺了一些东西(没正确的解码),然后我去抓了下包发现,我小程序端发送请求的时候,token是undifend,然后检查了一下store中的token发现,是我写错了变量名(😂好低级的错误)

微信小程序给 thinkphp后端发送请求出现错误 Wrong number of segments 问题的解决 【踩坑记录】,微信小程序,# ThinkPhP6,微信小程序,小程序,ThinkPHP

解决方案及步骤(总结)

微信小程序向后端发送请求时出现"Wrong number of segments"错误,通常是由于请求的URL路径不正确或请求参数不符合规范所导致的。

在ThinkPHP后端中,这个错误通常发生在执行控制器方法之前,因为ThinkPHP会根据请求的URL路径来匹配相应的控制器和方法。

要解决这个问题,你可以按照以下步骤进行排查:

  1. 检查请求的URL路径是否正确。确保你在微信小程序中发送请求时,URL路径是正确的。例如,如果你在ThinkPHP中定义了一个控制器名为"Index",并且该控制器有一个名为"test"的方法,那么正确的URL路径应该是类似于"http://example.com/index/test"的形式。
  2. 检查请求的参数是否符合规范。如果你的控制器方法需要接收参数,确保你在微信小程序中发送请求时,参数的数量和格式是正确的。例如,如果你的控制器方法需要接收两个参数,那么你在微信小程序中发送请求时也需要提供两个参数。
  3. 检查URL路径和参数是否与路由配置匹配。在ThinkPHP中,你可以在路由配置文件中定义URL路径和参数的映射关系。确保你在路由配置文件中定义的路径和参数与你的控制器方法的定义相匹配。

如果以上步骤都没有解决问题,你可以进一步检查你的控制器方法和路由配置,确保它们没有其他错误或问题。文章来源地址https://www.toymoban.com/news/detail-708347.html


到了这里,关于微信小程序给 thinkphp后端发送请求出现错误 Wrong number of segments 问题的解决 【踩坑记录】的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 微信小程序请求数据出现跨域问题

    1、开发环境可以勾选【不校验合法域名】 2、生产环境:配置合法域名,并把配置后的appid更新

    2024年02月12日
    浏览(38)
  • 微信小程序:axios请求小程序登录返回错误码41002

    记一次开发中遇到的很愚蠢的错误,很久没有碰过小程序开发了,曾经用php写过小程序的后端,现在想用基于node的express框架做后端,开发一款自己专属的小程序,结果出师不利,使用axios请求小程序登录模块,返回41002错误代码,如下图所示: 这个就很难受了,然后尝试用微

    2024年02月12日
    浏览(30)
  • 解决微信小程序真机测试出现errno:600001错误

    报错如下: 小程序真机调试报错问题:VM1096: Unhandled promise rejection {errno: 600001, errMsg: \\\"request:fail -102:net::ERR_CONNECTION_REFUSED}   原因如下: 1、token太长 2、域名的证书链有问题,请检查你的域名的证书链。 本人项目出现的情况是原因2。 打开域名链接,显示如下: 接下来,处理

    2024年02月11日
    浏览(45)
  • 【微信小程序】使用 wx.request 方法来发送POST网络请求,携带RequestBody参数

    在微信小程序中,你可以使用 wx.request 方法来发送网络请求。以下是将上述 Java 代码转换为微信小程序版本的示例: 在上述代码中,我们使用 wx.request 方法发送 POST 请求,并将请求的 URL、请求体数据、请求头等信息进行相应的设置。请求成功后,会在回调函数的 success 中处

    2024年02月15日
    浏览(36)
  • 微信小程序请求接口时报-202错误(服务器缺少中间证书)

    先到这个网站上面检查自己网站缺少的证书https://www.myssl.cn/tools/check-server-cert.html; 查到的错误是( 服务器缺少中间证书 ) 解决办法很简单: *** .crt里面缺少中间证书那么我们给它加一个中间证书代码就好了 *** 通过网站再次查询:

    2024年02月16日
    浏览(36)
  • (保姆级解决方案)微信小程序【真机预览】无法向服务器发送请求(实测有效)

    问题描述:微信小程序“打开调试模式可以发出请求,关闭调试模式无法发出请求” 1 获取uni-cloud官网提供的request合法域名  这个获取request合法域名是针对使用uni-cloud云开发的小程序。如果使用其它合法域名,同样可以按照下面的方法解决问题。  uni-app官网  2 在微信小程

    2024年02月05日
    浏览(46)
  • 在Vue中使用axios发送post请求时,可能会出现后端无法接收到参数的情况。

    在Vue中使用axios发送post请求时,可能会出现后端无法接收到参数的情况。这个问题的原因是axios默认发送的请求是json格式的,而后端接收的请求是form表单格式的,这就导致后端无法获取json格式的请求参数。解决这个问题可以通过设置axios的请求头部信息,将请求格式设置为

    2024年02月16日
    浏览(35)
  • 微信小程序出现“[渲染层网络层错误] Failed to load local image resource”解决方法

    加载image组件时,出现这样的报错 [渲染层网络层错误] Failed to load local image resource /pages/main/%E9%A6%96%E9%A1%B51.png   the server responded with a status of 500 (HTTP/1.1 500 Internal Server Error)  (env: Windows,mp,1.06.2301040; lib: 2.19.4) 查找资料时,发现有可能是图片路径出现问题 错误写法:   imgSrc

    2024年02月11日
    浏览(82)
  • uniapp开发微信小程序,出现[微信小程序开发者工具] [error] Error: Fail to open IDE 错误的原因--潘万丁

    [微信小程序开发者工具] [error] Error: Fail to open IDE 是因为 小程序AppID这里的id有自己以前填写的,现在肯能某种原因无法使用,所以把它清空或天上自己现在能用的即可,我建议为空更好,然后运行微信小程序肯能不会跳出来,这是需要将微信开发者工具关闭完了,在hbuilder

    2024年02月16日
    浏览(33)
  • 请求后端出现“Content type ‘application/octet-stream‘not supported“错误解决方案

    首先看报错。此报错是Springboot 报错。 看看Postman 正确的传递方式。 Vue应该怎么传递呢?使用 FormData 对象。 说明: 主要的解决思路是,要指定上传文件时其他附加信息的 contentType,那么去FormData对象如何指定某个参数的 contentType属性。 参考: https://blog.csdn.net/weixin_44030791/

    2024年02月11日
    浏览(35)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包