龙空技术网

微信小程序与云服务器沟通,学会这2招,你可以拥有自己的小程序

人工智能研究所 440

前言:

眼前大家对“flask部署到windows云服务器”都比较关怀,我们都想要分析一些“flask部署到windows云服务器”的相关知识。那么小编同时在网摘上网罗了一些关于“flask部署到windows云服务器””的相关文章,希望各位老铁们能喜欢,各位老铁们快快来了解一下吧!

上期文章我们分享了如何使用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, Responseapp = 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 == '123'and 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, Responseapp = Flask(__name__)@app.route('/login', methods=['	POST'])def login():    username = request.form['username']    pwd = request.form['pwd']    if username == '123'and 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,通过以上的分享,广大小伙伴们可以自行尝试快速搭建自己 的服务器以及小程序,中间过程中若有不明白的可以相互沟通交流

标签: #flask部署到windows云服务器