推荐星级:
- 1
- 2
- 3
- 4
- 5
基于Python Flask的手机与PC服务器通信
资料介绍
通过分析App Inventor的Web客户端组件功能,结合Python Flask实现Web API的特点,提出了在PC端通过Python Flask设计RESTful API,使用Http协议实现手机与PC的通信方法,并给出了通信实例。
部分文件列表
文件名 | 大小 |
基于Python_Flask的手机与PC服务器通信.pdf | 543K |
部分页面预览
(完整内容请下载后查看)第 卷
35
ꢀ
第 期
1
长 江 工 程 职 业 技 术 学 院 学 报
Vol.35 No.1
ꢀ
年
月
2018
ꢀꢀꢀ
3
JournalofChan ian InstituteofTechnolo
ꢀ ꢀ ꢀ ꢀ
gj g gy
ꢀ
Mar.2018
ꢀꢀꢀ
基于
的手机与
服务器通信
PC
PthonFlask
ꢀ
y
陈希球
( ,
长江工程职业技术学院 武汉
)
430212
ꢀ
:
要 通过分析
,
客户端组件功能 结合
,
的特点 提出了在
WebAPI
ꢀ
摘
的
A Inventor Web
pp
ꢀ
实现
端
PC
PthonFlask
y
ꢀ
ꢀ
,
使用
RESTfulAPI
,
的通信方法 并给出了通信实例
。
通过
设计
协议实现手机与
PC
PthonFlask
y
ꢀ
Htt
p
ꢀ
:
关键词 智能手机
;
PC
;
服务器 通信
:
:
A
:
文章编号
16730496201801000103
ꢀꢀꢀ
(
)
中图分类号
文献标识码
TP393
ꢀꢀꢀ
-
-
-
: / /
DOI10.14079 .cnki.cn421745tv.2018.01.001
-
j
[]
1
。
通过图形化积木式拖放组件的编
,
移动通信技术的讯猛发展 催生了移动互联网
收发短信功能
程方式来完成
ꢀꢀ
。
应用成井喷式的增长 根据
,
。
开发
A Inventor 2012
pp
的研究
在
年
Zenith Media
ꢀ
A s
pp
ꢀ
,
年 移动互联网流量将占互联网流量的比例
,
的行动学习中心 并由
到
移交给麻省理工学院的
2017
MIT
。
发布使用 目前发布了第 版本
A Invent
pp
, 。
占有互联网的绝大部分业务 皮尤报
,
将达到
75%
MIT
2
-
ꢀ
,
2017
、 、
提供了以图形化表示的常量 变量 自定义过程
or
告显示
年 中 国 大 陆 地 区 智 能 手 机 拥 有 量 为
。 ,
亿部 由于移动互联网终端设备小巧轻便 通信
( )、 ,
函数 组件和事件处理等编程元素 采用面向对象
8.6
,
便捷的特点 使基于以智能手机为代表的移动应用
,
编程方法 其
。
结构如图 所示
1
A
pp
,
几乎无处不在 各种
,
可谓是呼之欲出 特别是
APP
、
各种基于手机的远程控制 远程数据交换的应用业
,
务要求极速递增 实现这些移动应用业务的关键是
。
服务器之间的通信问题 对于
解决智能手机与
PC
,
平 台 惯 用 方 法 是 通 过
来 实
JavaScoket
ꢀ
Andriod
, ,
现 程序设计相对较为繁杂 本文利用
A
Invent
-
pp
ꢀ
的 客 户 端 浏 览 器 组 件 与
架 构 的
PthonFalsk
y
ꢀ
or
Web
方法简单 易于实现
,
间的双向数据通信
服务器实现了手机与
PC
图
结构
1
ꢀ
A InventorA
ꢀ
pp pp
ꢀ
,
。
1.2 PthonFlaskWeb
ꢀ ꢀ ꢀ
y
,
语言近些年越来越火 其特点是开发迅
Pthon
y
通信平台简介
,
,
、
。
速 语法简单 可移植 网络资源丰富等
Flask
是
1
ꢀ
。
应 用 框 架
Web
一个使 用
编 写 的 轻 量 级
Pthon
y
智能手机端采用
工具设
Inventor
Android
计客户应用
A
pp
ꢀ
,
模板引擎则使用
g
其
工具箱采用
WSGI
Werkzeu
,
PC
pp
端使用 语言第三方提
Pthon
y
A
,
Jina2 Flask
j
、
集成
debu er
gg
自带开发用服务器 和
,
模块 通过
供的
安装后设计服务器程序
Pi
p
Flask
[]
2
。
(
)
和
g
单元测试
调度请 求
RESTful
unittestin
ꢀ
(
),
方式 通信 利用
其它网站 可通过设计
WebAPI
ꢀ
,
主要由路由
RESTfulAPI
利用
开发
Pthon
y
Flask
ꢀ
。
的路由和视图函数实现数据的双向传输
Flask
,
和视图函数组成资源 路由提供
,
定位资源 实
URL
1.1 A Inventor
ꢀ
pp
ꢀ
,
现网址到资源的映射 视图函数则是实现通过
Get
处理
是由 公司开发的一款在
Goole
g
A Inventor
pp
ꢀ
(
)
方法传递通信参数 命令 对应的
Post
或
API
,
编程工具软件 内嵌了若干传感
线开放的
Andriod
,
单元 客户端通过路由调用
,
实现数据的存取
API
, ,
器组件 可以直接 调用设 备 的功能 比 如位置传感
,
数据通常为
形式作为响应
设计
JSON
REST API
ꢀ
、 、 、
器 加速度传感器 方向传感器 手机的拨打电话及
。
与工作模式如图 所示
2
:
收稿日期
20171112
- -
:
作者简介 陈希球
(
),
1962
-
, ,
湖北崇阳人 硕士 教授 主要从事电子信
,
。
息技术教学与研究
—
—
1
陈希球 基于
ꢀ
的手机与
服务器通信
PC
PthonFlask
y
ꢀ
。
Flask
求的
与视图函数之间的映射
框架根
URL
据
请求的
在路由表中匹配预 定义 的
HTTP
URL
, ,
规则 找到对应的视图函数 并将视图函数的
URL
。
执行结果返回
服务器
WSGI
图
设计与工作模式
RESTAPI
ꢀ
2
ꢀ
通信系统设计
2
ꢀ
,
手机要通过移动接入网连接到互联网 也可通
。
通信 通信协议
过
实现手机与局域网内
WiFi
PC
,
分 别 由 客 户 端 的
p
为
组 件 和 服 务 端 的
Htt
Web
,
对协议进行了封装 开发者只需按 通信 约 定
Flask
,
格式进行程序设计 其通信过程如图
。
3
图
服务器程序设计流程图
5
ꢀ
图
客户端与服务器通信过程
3
ꢀ
手机端通信设计
2.1
ꢀ
手机端
使用
的
客 户
Web
APP
A Inventor
pp
ꢀ
,
端组件 该 组 件 的 使 用
,
协 议 提 供 了
、
Get
HTTP
,
方 法 实 现 与 网 络 服 务 之 间 的 信 息 交
及
Put Post
图
响应客户的请求过程
6 Flask
ꢀ
。
,
属性指向服务器的网址 调用
Url
换
组件的
Web
、
或
GetPut Post
,
方法发送请 求 当请
组件的
Web
通信系统实现
3
ꢀ
,
求成功有数据返回时 触发收到数据事件
(
),
Event
[]
3
,
在事件处理程序中对收到的数据进行处理
程序
,
为说明通信的实现方法 下面以手机
的文
APP
。
4
流程如图
, ,
本框作为命令参数 命令按钮发送请求 接收数据在
。
和服务器程序设计
文本框中显示为例进行
APP
, “
程序如图 所示 程序分别由 发送请
7
手机
APP
” “
求按钮 和
” ,
客户端 两个事件处理程序组成
1
Web
,
在发送请求按钮事件中通过字符串合并操作 将服务
,
以调用对应的视图
Uul
器的网址与命令参数合并为
,
函数 再发向服务器发送
,
请求 当有数据返回
GET
,
时 触发
“
Web
” ,
客户端 获得文本事件 在该事件中
1
,
图
手机端流程图
4
ꢀ
, “ ”
读取响应内容 存入 返回数据 文档框中显示
。
端通信设计
2.2 PC
ꢀ
:
服务器端的实现代码如下
PC
是第三方提供的用
开发
应
Flask
Pthon
y
Web
导入
Flask
formflaskim ortFlask
ꢀ ꢀ p ꢀ ꢀ #
,
架构的一个框架 它内置了简单的
用的具有
(__ __)
= Flask name
ꢀꢀ #
MVC
实类化
Flask
a
pp
,
服务器 通过封装的
WSGI
和
Reuest Resonse
p
两
(/)
a .route''
路由
ꢀꢀꢀꢀꢀ #
q
@ pp
/ , ,
个对象进行请求 响应操作 从而实现双向通信 服
():
defwelcome
ꢀ
视图函数
ꢀꢀꢀꢀꢀꢀ#
。
"
return Welcometousemobilecommuni
ꢀꢀ ꢀ ꢀ -
务器设计严格按照图 流程进行
5
图
为客户请求
6
ꢀ
ꢀ
。
,
的应用中 路由是指用户请
Flask
"
cation
的响应过程
在
—
—
2
全部评论(0)