网站推广.NET

网站推广.NET

微信小程序如何设置本地开发环境

来源:互联网

写在前面:

由于不能保证本地环境和远程环境完全相同,因此它可以在本地测试环境中很好地运行,但是在实际的开发或生产环境中会出现问题。这并非不可能。 。遇到无法理解的问题时,我仍然相信以下几点:

1.在自己的位置错误的可能性比在操作环境中大得多

2.如果这确实是由操作环境引起的问题,则不应持续很长时间

3.调试时,添加更多检查点以减少不确定因素

4.散步,向小黄鸭解释程序会有所帮助

与每次修改服务器端代码时的腾讯云相比>上传测试代码,等待上传,等待部署,等待重启,设置本地测试环境和开发确实非常顺畅。更不用说您可以直接在终端中查看服务器的返回信息。如果要依靠在线开发,则必须登录到腾讯云,从node.js下载日志文件,将其解压缩,然后从最近的100条日志中查找有意义的内容。

以前可以进行单步调试,但是最近已禁用此功能。尽管我不知道以这种方式打开本地测试将花费多长时间,但至少我认为这是目前最好的解决方案。总体流程图如下:

服务器的组成:nginx + node.js + mysql(由phpAdmin管理)晶圆2的节点框架是使用mac os系统部署的。当然客户也使用Wafer2-client

该系统的当前组成类似于腾讯云。我没有单独安装mysql,而是使用mamp作为软件包解决方案。 mamp的mysql端口为8889,而不是默认的3306。使用它时应注意。另一点是,由mamp打开的mysql似乎无法使用root作为用户名从晶圆2登录。具体原因尚不清楚。我在phpadmin中创建了一个新用户ben,并赋予了它所有特权,以便它可以访问所有必需的数据表,然后使用晶圆2登录。

nginx的安装可以直接在Mac中交付给brew。节点的安装...只需下载并安装。对于晶圆2,我使用了晶圆2启动演示。基于此,我根据需要向客户端和服务器添加了一些内容。

Config.js(客户端)和config.js(服务器)端设置

有关详细信息,请参阅/ p / ffa90a0e9770

有几点:

在服务器端,应设置appid和应用程序密钥(从公共平台获取),出于未知原因,应将useQcloudLogin设置为false。从开发服务器中导出cAuth中的两个表,并将它们导入到本地MAMP下的mysql中。在相应的cAuth中,您必须在客户端设置主机地址。请勿在此处使用端口号将其设置为localhost,因为它不再起作用。应该将其设置为您的开发环境URL,这是https,非常奇怪的URL服务器/需要在node_modules / wafer-node-sdk / index.js中注释掉某些文件,原因也不明

其中更重要的是:/ p / 61f50ee77dec

本文提到要点:

通过设置主机,让特定的URL通过nginx作为反向代理到达您的127.0.0.1,让您的本地主机支持https,并且可以将80端口请求转发到实际的在晶圆2节点上运行的应用程序自然需要一个证书来支持https。本文提到了如何使用openssl生成本文中提到的服务器地址,然后转到微信公共平台背景以不再可以添加此方法,因为现在必须填写icp归档地址。因此,最好直接使用腾讯云提供的免费地址作为服务器地址,然后在主机中转到127.0.0.1。但是在本文中,服务器端是通过json-server完成的。这有点...不清楚。如果真的只是为了调试前端,那么做很多事情有意义吗?我进行此本地服务器设置只是为了查看后端tm出了什么问题!因此,在这两篇文章合并之后,建立本地服务器的过程基本上就很清楚了。

最后,经过将近两个星期的模糊测试,现在我第一次发布了小程序。它具有正面和后端服务器。我了解了有关koa框架和knex的一些知识。我学会了一些JavaScript,并从中学到了很多东西。该系统并不大,因此暂时写入不是大问题。但是我不相信我可以使用小程序来开发更大的系统。在后台,我认为我仍然必须使用更成熟的框架才能更加放心。接下来,先做自己的工作,看看有空时Django如何做。