官方的具体部署过程文档在:上云API。
前端
首先,按照文档上要安装的DEMO前后端代码下载并且解压完成后(这里的DEMO前端代码下载后存放在NTFS格式的盘中,不然后面使用npm install时下载会很慢切换镜像也没用,就算下完或者切换用yarn/cnpm....可能还有一些vite什么的文件没有下下来,一个一个导当时导完了也会导致后端能跑,而打不开前端页面显示错误等,比如[plugin:vite-plugin-eslint] This method cannot be used with flat config. Cannot find type definition file for 'vitest/globals'.TypeError: hasFlag is not a function.Cannot find type definition file for 'vite/client'. 等等的在config.ts文件等的问题,不要去用AI改代码,都是正确的,需要改的只有跟着官方文档流程做的Cloud-API-Demo-Web\src\api\http\config.ts下的appId,appKey 和 appLicense(这三个申请去 DJI Developer ,不同的云上部署文章都有详细提到怎么做),amapKey(这个需要上高德开放平台 | 高德地图API去申请一下,用申请后的Key填充到amapKey中,baseURL: 'http://localhost:6789/', websocketURL: 'ws://localhost:6789/api/v1/ws',我这个配置是后端的端口那些配置都没有改去配的,如果你的后端的端口改了,那么这里肯定也要换))。在此一提有关跨域的问题,就是我看到有视频里说vite.config.ts里的server: {xxxxxx},这一块还需要加东西解决。但是我的没有加还是能启动的,所以如果你全部都部署完成了还是不行,可以加一些试试。
报错信息:Install fail! Error: EISDIR: illegal operation on a directory, symlink 'E:\xxx'
这个就是我当时存在FAT磁盘下npm install下载慢的原因,换成NTFS格式的磁盘下载就好了~
这里注意千万不要npm install 觉得慢就ctrl c停止了,想要查看npm install 进度的可以用npm install --verbose。我的下载流程是:
npm install -g nrm
nrm add taobao https://registry.npmmirror.com
nrm use taobaonpm install
然后我不是用了那个npm install --verbose可以看到 HTTP 请求和响应的详细信息嘛,就有很多类似于npm http fetch GET https://registry.nlark.com/vue cookies/download/vue cookies-1.7.4. tgz attempt 2 failed with ENOTFOUND的信息,主要是最后有很多with ENOTFOUND。说明没有下载好。解决办法是把前面那个registry.nlark.com换成registry.npmmirror.com就好啦,输出的应该是类似于:npm http cache @amap/amap-jsapi-loader@https://registry.npmmirror.com/@amap/amap-jsapi-loader/download/@amap/amap-jsapi-loader-1.0.1.tgz 1ms (cache hit)。具体怎么换我上面那个代码就已经搞好了,复制粘贴应该就可以。
等后端也配置完成,就可以运行,目前先不要,我是先后端部署好再去部署的前端。这样就能启动后端,再启动前端就直接蹦出来了。
npm run serve
到这里前端的配置就完成了,后面再继续后端配置(●'◡'●)