Skip to main content
德胜云
  万速智能9 > 服务器知识

难以置信「微信小程序与云服务器沟通,学会这2招,你可以拥有自己的小程序」微信小程序服务器部署流程微信小程序的服务器配置

2024-05-08 10:19:05 浏览:

难以置信「微信小程序与云服务器沟通,学会这2招,你可以拥有自己的小程序」微信小程序服务器部署流程微信小程序的服务器配置

上期文章我们分享了如何使用Python+Flask+Tornado+Nginx部署自己的web服务器,待我们部署完自己的小程序后,如何使用微信开发,或者头条开发自己的小程序?小程序如何跟服务费打交道,本期文章带你看http 的get 与post 方法

http协议

在了解get和post之前,我们要先了解TCP/IP和http。简单来说,TCP/IP是网络架构,TCP/IP是五层网络架构(区分于OSI七层架构),TCP/IP自上而下分为应用层,传输层,网络层,数据链路层,物理层。Http是位于应用层的协议,TCP位于传输层(区别于UDP),IP是位于网络层的。简单来说,Http是基于TCP/IP的一种通信协议(超文本传输协议,所有www都必须遵循这个协议,你所看到的网页都是基于这个协议)。

Http定义了与服务器交互的不同方法,最基本的方法有4种,分别是GET,POST,PUT,DELETE。URL全称是资源描述符,我们可以这样认为:一个URL地址,它用于描述一个网络上的资源,而HTTP中的GET,POST,PUT,DELETE就对应着对这个资源的查,改,增,删4个操作。到这里,大家应该有个大概的了解了,GET一般用于获取/查询资源信息,而POST一般用于更新资源信息。

get会产生一个TCP数据包,POST会产生两个TCP数据包。

get会发送http header和data给服务端,服务端返回一个200,请求成功。

post会先发送http header给服务端,告诉服务端等一下会有数据过来,服务端返回100,告诉客户端我已经准备接收数据,post在发送一个data给服务端,服务端返回200,请求成功。g

无论是get请求或者post请求,都可以与云服务器沟通数据,只是在开发时,代码略有区别

代码实战

小程序的get请求

flask 的web服务,默认是get请求,首先我们设计服务器端的代码:

from flask import Flask, render_template, request, Response app = Flask(__name__) @app.route(/login, methods=[ GET ]) def login(): pwd = request.args.get(pwd) username = request.args.get(username) #username = request.form[username] #pwd = request.form[pwd] if username == 123and pwd ==123: return 成功 else: return 失败 if __name__ == __main__: app.run()

我们按照最简单的登录验证的例子来讲述get 与post的区别

以上代码的意思是当有get请求/login 的url地址时,服务器来接受客户端传递的数据

接受数据使用request.args.get函数来接受

小程序端代码:

tt.request({ url: 127.0.0.1/login, //本地服务器地址 data: { pwd: 123, username:123 }, method: GET, header: { "Content-Type": "application/json" //默认值 }, success: function (res) { print(res.data) } })

微信小程序(wx.request)或者头条小程序(tt.request)都设计有request请求函数来处理url请数据请求

以上便是头条小程序端的代码设计,我们填写url的请求地址,请求的数据data,设计请求方式为get

设计请求的header

当请求完成后,服务器返回请求的数据给小程序,我们直接在sucess函数里面便可以打印服务器传递的数据res.data

有了服务器的数据,便可以 处理一些数据。

小程序的post请求

小程序的post请求,服务器端代码

from flask import Flask, render_template, request, Response app = Flask(__name__) @app.route(/login, methods=[POST]) def login(): username = request.form[username] pwd = request.form[pwd] ifusername ==123and pwd == 123: return 成功 else: return 失败 if __name__ == __main__: app.run()

与get请求不同的是,请求方式设计为post,处理数据使用request.form函数

通过以上基础知识的了解,由于post请求是表单类的请求,这里获取数据自然使用form表单类函数

小程序端代码:

当然post请求,客户端的代码也稍微有所区别

tt.request({ url: 127.0.0.1/login, //本地服务器地址 data: { pwd: 123, username:123 }, method: POST, header: { content-type: application/x-www-form-urlencoded }, success: function (res) { print(res.data) } })

通过以上代码,可以看到主要的区别是post请求的header与get的header不同

无论哪种请求方式,小程序都可以与服务器进行数据的交流沟通,当然,你也可以使用服务器上的数据库,关于python数据库的操作,小伙伴们可以参考往期的文章分享。

ok,通过以上的分享,广大小伙伴们可以自行尝试快速搭建自己 的服务器以及小程序,中间过程中若有不明白的可以相互沟通交流

难以置信「微信小程序与云服务器沟通,学会这2招,你可以拥有自己的小程序」微信小程序服务器部署流程微信小程序的服务器配置

  • 墙裂推荐「易合网:有几种类型的网站,你了解吗?」易合网软件定
  • 深度揭秘「如何给自己的公司建网站,制作网站的平台」怎么建设公
  • 一篇读懂「网站建设的基本流程,做网站的流程与步骤」网站建设的
  • 这都可以「10个无需备案性价比超高的国外域名注册商」国外域名
  • 墙裂推荐「IDC发布2023第一季度报告:深信服超融合市场份