根据错误信息,可以看出是请求未经授权导致的。在前端代码中,登录成功后获取到了访问令牌(access_token),但是在发起创建行程的请求时并没有将访问令牌放入请求头中进行认证。

需要在创建行程的请求中加入访问令牌,将其放入请求头的Authorization字段中,以Bearer Token的形式进行传递。修改前端代码如下:

wx.login({
  success: res => {
    wx.request({
      url: 'http://localhost:8080/v1/auth/login',
      method: 'POST',
      data: {
        code: res.code,
      } as auth.v1.ILoginRequest,
      success: res => {
        console.log(res)
        var accessToken = ""
        if (typeof res.data === 'object' && "access_token" in res.data) {
          const access_token = res.data["access_token"];
          console.log(access_token);
          accessToken = access_token
        }

        wx.request({
          url: 'http://localhost:8080/v1/trip',
          method: 'POST',
          header: {
            'Authorization': `Bearer ${accessToken}`
          },
          data: {
            data: res.data
          } as rental.v1.ICreateTripRequest,
          success: res => {
            console.log(res)
          }
        })

      },
      fail: console.error,
    })
  }
})

修改后的代码会将访问令牌放入请求头的Authorization字段中进行传递,完成行程创建请求的认证

tripgo文件package tripimport 	context	rentalpb rentCarserverrentalapigenv1	rentCarserverrentaltripdao	rentCarserversharedauth	rentCarserversharedid	gouberorgzap	googlegolangorggrpccodes	googlegolangorgg

原文地址: https://www.cveoy.top/t/topic/hP4P 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录