uni-app H5本地调试连接本地云函数不成功,一直都是运行线上云函数

uni-app H5本地调试连接本地云函数不成功,一直都是运行线上云函数

4 回复

终于找了一个解决方案, 原来是因为本机环境的问题 https://blog.csdn.net/weixin_44579640/article/details/124087655

更多关于uni-app H5本地调试连接本地云函数不成功,一直都是运行线上云函数的实战教程也可以访问 https://www.itying.com/category-93-b0.html


阿里云,运行本地函数失败 21:11:50.690 [本地运行:阿里云:four-seasons]本地运行云函数【admin】(已携带admin.param.json参数)… 21:11:50.690 [本地运行:阿里云:four-seasons]运行日志: 21:11:52.630 [本地运行]Error: errCode: ERR_OSSL_DSO_COULD_NOT_LOAD_THE_SHARED_LIBRARY | errMsg: error:25078067:DSO support routines:win32_load:could not load the shared library 21:11:52.661 [本地运行] at C:\Program Files\HBuilderX\plugins\unicloud\aliyun@dcloudio\serverless\lib\aliyun\uni-cloud.js:1:1448 21:11:53.268 [本地运行:阿里云:four-seasons]运行状态:失败
21:12:31.053 [本地运行:阿里云:four-seasons]本地运行云函数【admin】(已携带admin.param.json参数)… 21:12:31.053 [本地运行:阿里云:four-seasons]运行日志: 21:12:32.572 [本地运行]Error: errCode: ERR_OSSL_DSO_COULD_NOT_LOAD_THE_SHARED_LIBRARY | errMsg: error:25078067:DSO support routines:win32_load:could not load the shared library 21:12:32.573 [本地运行] at C:\Program Files\HBuilderX\plugins\unicloud\aliyun@dcloudio\serverless\lib\aliyun\uni-cloud.js:1:1448 21:12:33.199 [本地运行:阿里云:four-seasons]运行状态:失败

没人回答?在执行jql的时候 也遇到了同样的问题。

本地调试H5时连接本地云函数失败,通常是由于配置或环境问题导致。以下是常见原因及解决方案:

  1. 检查云函数本地调试配置

    • uniCloud/cloudfunctions目录下,确保已启动本地云函数服务(运行npm run dev或通过HBuilderX启动)。
    • 在H5项目的manifest.json中,确认已启用本地云函数调试:
      "h5": {
        "devServer": {
          "port": 8080,
          "disableHostCheck": true
        }
      }
      
  2. 确认云函数调用方式

    • 本地调试时应使用相对路径或本地服务器地址,例如:
      const db = uniCloud.database({
        provider: 'aliyun', // 或腾讯云
        spaceId: 'your-space-id',
        clientSecret: 'your-client-secret',
        endpoint: 'http://localhost:8090' // 本地云函数服务地址
      });
      
    • 避免使用线上环境配置,确保未设置uniCloud.init中的线上空间ID。
  3. 网络与跨域问题

    • 本地云函数服务默认运行在localhost:8090,确保H5页面访问的域名/端口与云函数服务一致。
    • 若H5运行在localhost:8080,需在云函数服务端配置跨域(CORS),或在HBuilderX中启用代理设置。
  4. HBuilderX配置

    • 在运行菜单中,选择“运行到浏览器”时,勾选“启用本地云函数调试”。
    • 检查控制台输出,确认本地云函数服务已成功启动且无端口冲突。
  5. 临时解决方案

    • 若仍不成功,可暂时在代码中强制指定本地环境:
      // 开发环境下手动切换为本地调用
      if (process.env.NODE_ENV === 'development') {
        uniCloud.config({
          provider: 'aliyun',
          endpoint: 'http://localhost:8090'
        });
      }
回到顶部