收藏
回答

使用wx.request访问云存储文件,返回json数据,开发工具可以但是真机测试不行?

各路大神们,问题是这样的,我刚开始开发一个信息查询工具,使用的云开发数据库,但是由于数据库里数据量较大,云函数请求返回的数据只能小于1M,所以云函数无法使用了,我不想再使用云空间等服务器,就把数据存放在了云存储里面,数据大于1M,使用wx.request访问云存储文件来获取数据一起正常,没有用downloadFile的原因是downloadFile无法获取数据,只能获取路径,现在的问题是开发工具测试wx.request一切正常能获取到数据,但是到了手机端测试时wx.request出现错误,提示request:fail url not,为什么会出现这种错误?关于服务器域名配置的问题,官方不是说了“使用官方推出的 微信云开发或微信云托管,无需服务器及域名配置即可上线小程序,”吗?而且我尝试了,配置时https://6c61-lawserach-mini-1301921735.tcb.qcloud.la/allLaw.json?sign=a67959dba06433de65aa994792711f8c&t=1629048865不是合法的域名,真搞不懂了。难道我必须花钱购买云服务就可以吗?求教跪拜!

//从云存储下载数据

  downFile(){

    wx.request({

      url: 'https://6c61-lawserach-mini-1301921735.tcb.qcloud.la/allLaw.json?sign=a67959dba06433de65aa994792711f8c&t=1629048865', //仅为示例,并非真实的接口地址

      data: {

        x: '',

        y: ''

      },

      header: {

        'content-type': 'application/json' // 默认值

      },

      

      success: (res)=> {

        app.globalData.allLaw=res.data //设置全局变量为所有有法律内容

        wx.setStorageSync('allLaw',res.data ) // 将所有法律存入缓存

        // console.log(app.globalData.allLaw.data[0])

        console.log(res)

        console.log('写入缓存成功')

        console.log("222")    

      },

      fail(err){

        wx.showToast({

          title:err.errMsg

        })

      }    

    })

回答关注问题邀请回答
收藏

2 个回答

  • 困难
    困难
    2021-08-18

    讲道理你说数据量很大又想一次查完,这么大数据量传输和前端渲染也是有问题的吧?就算能查,用户难道要干等你慢慢渲染完所有内容吗,他手机屏幕一次又看不完所有内容。

    查询的时候做分页,一次查几条足够占满屏幕,用户滑完触底再发请求查下面几条,展示效果上跟一次查完没区别啊,最后不也能显示全所有结果吗。。。。

    2021-08-18
    有用
    回复
  • Mr.Zhao
    Mr.Zhao
    2021-08-16

    大佬,你数据库查询不分页的吗?屏幕能放下多少,就查多少不就行了。

    不需要配置域名的是 wx.cloud.callFunction wx.cloud.callContainer wx.cloud api不用配置合法域名

    2021-08-16
    有用
    回复 3
    • Mr.F
      Mr.F
      2021-08-16
      需要搜索数据库所有内容,没法分页,否则搜索结果不全面啊。多谢
      2021-08-16
      回复
    • Mr.Zhao
      Mr.Zhao
      发表于移动端
      2021-08-17回复Mr.F
      是先查询后分页,不是先分页后查询
      2021-08-17
      回复
    • Mr.Zhao
      Mr.Zhao
      发表于移动端
      2021-08-17回复Mr.F
      百度搜索也是不分页的?上亿的数据都返回来?
      2021-08-17
      回复
登录 后发表内容