我用了一台阿里云服务器,任何能在互联网上被访问到的服务都可以。服务器的 IP 地址是 42.120.40.68。在本地电脑,使用命令行工具可以登录到服务器。Windows 推荐使用 Cmder 作为命令行工具,macOS 用户可以使用系统自带的终端 (Terminal)。 ssh wanghao@42.120.40.68 wanghao 是在我的服务器上的某个用户的名字,这个用户是我自己创建的。一开始,你可以使用服务器的超级管理员:root 登录到你的服务器,然后你可以创建新的用户,为用…
我用了一台阿里云服务器,任何能在互联网上被访问到的服务都可以。服务器的 IP 地址是 42.120.40.68。在本地电脑,使用命令行工具可以登录到服务器。Windows 推荐使用 Cmder 作为命令行工具,macOS 用户可以使用系统自带的终端 (Terminal)。 ssh wanghao@42.120.40.68 wanghao 是在我的服务器上的某个用户的名字,这个用户是我自己创建的。一开始,你可以使用服务器的超级管理员:root 登录到你的服务器,然后你可以创建新的用户,为用…
搭建微信支付的开发环境,要保证开发环境可以在互联网上被访问到。因为微信支付系统会通过应用支付的结果,如果开发环境在互联网上不能被访问到,也就收不到这个支付结果。在开发很多其它外部服务的时候,都需要这样做,比如支付宝,微信公众号等等。下面介绍的方法同样适用于搭建开发这些服务的环境。 我用的方法是使用了一台能在互联网上被访问到的服务器,在上面用 Nginx 配置一个代理,把请求转发到服务器的某个端口上。然后用 ssh 在本地跟服务器之间打一个通道,通道用的端口就是配置 Nginx 的时候,设置的上游服务 (upstrea…
文章里我会在一个 Node.js 应用里实施微信扫码支付的功能,要用的框架是 Adonis.js。确定本地电脑上已经安装好了 Node.js v9.x.x(主要是因为代码里用到了 spread 操作符),推荐使用 NVM 来管理安装的 Node.js,这样可以很容易切换使用不同版本的 Node.js。有了 Node.js,再去安装框架需要的命令行工具。 安装框架命令行 npm install @adonisjs/cli --global 创建项目 使用安装好的 Adonis 框架的命令行工具,去创建一个基于 Ado…
图:Anna Paschenko 开通微信支付服务,准备一个可以在互联网上被访问到的开发环境,就可以为应用开发微信支付功能了。下面就一起了解一下搭建开发微信支付环境的方法,然后在一个 Node.js 应用里实现微信支付的扫码支付 (Native) 功能。 内容比较多,所以分成两个部分,这是上半部分,主要介绍的是微信支付开发前的一些准备工作,在本地搭建一个开发微信支付的环境。文章配套有个视频版本,宁皓网会员可以在线观看: 命令行工具:Windows 下载安装完整版的 Cmder,macOS 使用系统自带的终端 (…
介绍了开发具有实时功能的应用需要的 Websocket。客户端 (比如浏览器) 与服务端之间可以在实时沟通交流。 在服务端可以注册一些通信用的频道 (Channel),每个频道下面月可以添加多个主题 (Topic)。然后在客户端那里可以选择去订阅频道或者主题,这样在客户端与服务端之间就可以通过这个频道进行通信,客户端有什么事可以发送给服务端,服务端收到消息可以决定如何去处理。在服务端可以做广播,广播的消息在所有的客户端上都可以实时得到。 比如某个用户在某篇文章上发表了一条评论,服务端收到评论可以做一下广播,这样正在浏览这篇…
「王皓啊,这次要跟你道别了,我的好外孙。」 姥爷紧紧地用两只手抓住我的右臂。8 年前,姥爷随二姨一家搬到济南。那天,我走进站台,见到了远处的姥爷。头戴礼帽,手里拄着几年前他来济南时买的拐杖,里面好像还藏着一把剑。其实姥爷不太需要那把拐杖,我猜他应该是喜欢那个酷酷地感觉才这样的。我走近了,姥爷看到了我,顿了一下手里的拐杖,躲了一下脚,暴出一句粗话 (山东口音),「他妈的,我还以为再也见不到你了。」 60 几年前,姥爷跟我现在相似的年纪。为了不让全家饿死,他背上了几块姥姥做的煎饼,拿了几块钱,跳上火车,从山东出发,去往一…
屋子里坐着百十来号人,他们参与的项目影响着上亿人的娱乐、学习、工作还有生活。想到这,突然有种不寒而栗的感觉。 Luke 在微信上跟我说:「12/5 下午会在北京办公室举办一场 Flutter Live Beijing 的活动,要不要过来参加一下?」 ,Luke 和他的团队在谷歌北京办公室负责 Flutter 在国内的一些工作。 第一次听到 Flutter 应该是在朋友圈里看到的。因为我删掉了所有新闻类应用,屏蔽了平时习惯性打开的新闻和视频网站。只剩下浏览器没办法删,安卓手机打开浏览器就会出现新闻。iOS 好一点,只…
最近做了一个关于搭建商业网站的迷你系列课程。这是一个真实的案例,网站运行在阿里云 ECS 服务器上,并搭配了负载均衡,提高网站的响应速度。 年前的时候,于哥微信跟我说他自己的服务器到期了,忘记了续费,网站被删除掉了,问我还能再把网站找回来吧。阿里云服务器在过期以后,数据会保留一阵子,看来是很久以后才知道的。不然及时续费,网站还是可以继续使用的。 10 几年前,通过朋友介绍,我帮于哥搭建了一个作品展示网站。 因为自己本身也喜好摄影,所以看到专业的摄影师由衷地敬仰,总想着巴结巴结。后来我们也成为了朋友,一直保持联系,也…
春季课程已经开始更新了,这一季的内容都很实用。包含构建电子商务网站,开发集成微信支付与支付宝,开发微信 / 支付宝电商小程序 (正在每周更新)。年费会员现在就可以加入学习群,提前下载网站或应用的源代码。 构建电子商务网站 构建自己独立的电子商务网站更能体现自己的品牌,界面与服务流程都可以自己定制,更重要的是客户是你自己的。而且有些情况,你可能不太希望把自己的产品放到其它平台上去销售,你可能受不了其它平台的各种限制或者不认同他们的品牌等等。 开源软件世界里为构建电子商务网站提供了很多方案,有专注电商的,比如 Magen…
2018 年 4 月,工业和信息化部发布了关于贯彻落实 《推进互联网协议第六版 (IPv6) 规模部署行动计划》 的通知,大力推广下一代互联网技术 IPv6。 时至今日,高校教育网以及各大运营商已经基本支持了 IPv6 地址的分配。然而绝大多数家庭的路由器还不能支持自动下发,因此并没有享受到下一代互联网的快感。 这里主要介绍使用 OpenWrt/LEDE 来解决内网设备分配 IPv6 的问题。 想要让路由器下的设备获得 IPv6 地址通常有三种方式:relay(中继)、NAT(地址转换)、Passthrough(穿透)…