当前位置: 首页 > news >正文

DMZ做网站房天下网站建设

DMZ做网站,房天下网站建设,软件应用商店,ps网站切图教程问题描述 现有一个用python写的程序#xff08;或者是一个或几个的函数接口#xff09;#xff0c;需要在Web前端调用python写的函数。如果直接用前端java来调用会很不方便#xff0c;而且会出现各种麻烦的问题#xff0c;下面给出如何在web前端调用python的接口。 解决…问题描述 现有一个用python写的程序或者是一个或几个的函数接口需要在Web前端调用python写的函数。如果直接用前端java来调用会很不方便而且会出现各种麻烦的问题下面给出如何在web前端调用python的接口。 解决方法 使用python的RESTful API库将python写的函数封装为Web端可调用的接口在web端即可直接调用python的程序。 解决过程 1. 安装RESTful API环境 RESTful API环境其实主要是需要安装flask库安装方法如下 使用pip安装 pip install flask使用conda 安装 如何没有创建新的虚拟环境首先创建虚拟环境 conda create --name 环境名称 [pythonPython版本] # 例如 conda create --name myenv python3.10然后激活进入创建的新环境 conda activate myenv然后安装flask conda install flask安装途中选择y即可安装好。 2.测试是否安装完成 from flask import Flaskapp Flask(__name__)app.route(/) def hello_world():return hello worldif __name____main__:app.run()如果出现下面的输出说明flask安装完成然后复制下面的网站输入浏览器 如果浏览器上显示返回的内容则说明配置成功 3. 如何调用带参数的python程序 上面的是一个简单的例子下面介绍一下如何调用带参数的python程序 代码如下 from flask import Flask, request, jsonifyapp Flask(__name__)# 求三个数的乘积第三个输入参数为数组类型 def multiply(num1,num2,num3):return num1*num2*num3[0]# sum 为端口methods为方法 app.route(/sum, methods[GET]) def sum_numbers():# 首先获取参数将参数读进来num1 float(request.args.get(num1))num2 int(request.args.get(num2))num3 np.array(eval(request.args.get(num3)))# 将读取到的参数输入函数和所要计算公式中result num1 num2 multiply(num1,num2,num3)# 所要返回的内容该例子返回的是一个字典类型数据result {ID:num1,sum:result}return jsonify(result)if __name__ __main__:app.run()运行程序后在浏览器输入 http://127.0.0.1:5000/sum?num110num220num3[2,3]则可以显示返回值 根据上述步骤即可实现在Web端调用python程序接口。但调用接口的时候需要先运行上述的函数或接口然后在浏览器中输入相应的url才可调用成功。 注意事项 1. 报错如何解决 出错最多的为404 NOT Found这个错误一般是因为端口与程序中定义的不一致自行检查一般可以解决。 还有就是Internal Server Error 500这个错误说明端口可以正常访问但是内部的程序或代码语法出现了问题可以在代码中使用try....except来捕捉错误具体信息 from flask import Flask, request, jsonifyapp Flask(__name__)# 求三个数的乘积第三个输入参数为数组类型 def multiply(num1,num2,num3):return num1*num2*num3[0]# sum 为端口methods为方法 app.route(/sum, methods[GET]) def sum_numbers():try:# 首先获取参数将参数读进来num1 float(request.args.get(num1))num2 int(request.args.get(num2))num3 np.array(eval(request.args.get(num3)))# 将读取到的参数输入函数和所要计算公式中result num1 num2 multiply(num1,num2,num3)# 所要返回的内容该例子返回的是一个字典类型数据result {ID:num1,sum:result}return jsonify(result)except Exception as e:traceback.print_exc()return Internal Server Error: str(e), 500if __name__ __main__:app.run()当报错Internal Server Error 500时可以采用上述方法来查看具体错误。一般会返回类型值类型为非jsonify或string或数字类型可以在返回值前添加int、float或str来进行转换即可解决问题。 2. 多个函数调用 如果是多个函数调用格式如下 from flask import Flask, request, jsonifyapp Flask(__name__) def function1():… def function2():… def function3():…… if __name__ __main__:app.run() 以上就是全部内容最后贴出一个如何用flask调用简单处理栅格数据的例子其他操作可以参考 # test import numpy as np import math from osgeo import gdal from osgeo import osr from osgeo import ogr from shapely.geometry import Point from shapely.wkt import dumps from flask import Flask, request, jsonifyapp Flask(__name__)folder_dem C:\\Users\\Administrator\\Desktop\\ycDEM.tif# read data, nan to 0 def ReadData(filepath):gdal.AllRegister()ds gdal.Open(filepath)cols ds.RasterXSizerows ds.RasterYSizebands ds.RasterCountgeotrans ds.GetGeoTransform()proj ds.GetProjection()data ds.ReadAsArray()data[data data[0,0]] 0return dataapp.route(/ReadData1) def test1():try:a ReadData(folder_dem)b np.max(a)point1 Point(31.3,42.3)wkt1 dumps(point1)c {a: int(b), b: int(b), c:wkt1}# 返回包含两个字典return jsonify([c,c])except Exception as e:traceback.print_exc()return Internal Server Error: str(e), 500app.route(/ReadData2) def test2():try:a ReadData(folder_dem)b np.max(a)point1 Point(3,4)wkt1 dumps(point1)c {a: int(b), c:wkt1}return jsonify([c,c])except Exception as e:traceback.print_exc()return Internal Server Error: str(e), 500if __name__ __main__:app.run()更多内容关注公众号 GISerQ
http://www.hkea.cn/news/14489604/

相关文章:

  • 网站作品怎么做链接创建一个网站网站空间费用
  • seo网站推广全程实例aspit网站源码带手机版
  • dw做简单小说网站手机可怎么样做网站
  • 做网站所用的技术企业网站的建设意义
  • 网站开发交付网页制作素材代码
  • 登陆空间商网站各类网站建设
  • wordpress post结构seo是什么意思广东
  • 网站建设动态静态网上国网app推广经验
  • wordpress 更新网站网站留言板模版
  • 沈阳高端网站定制开发如何制作软件程序
  • 建设银行唐山分行网站上海电子商城网站
  • 山西省经济建设投资公司网站做付费软件网站
  • 建站 discuz做美食的网站哪个好
  • wordpress移植谷歌seo怎么优化
  • 灯饰模板网站wordpress前台显示英文
  • 黄圃网站建设图片在线转外链
  • 广州淘宝网站建设wordpress怎么做分页
  • 北海做网站有哪家好免费ppt模板软件哪个好
  • 营销网站认识用响应式做旧书网站
  • 如何修改网站底部东营网站制作
  • 怎么建设只要注册就赚钱的网站wordpress4.9下载
  • 黄岛网站建设服务公司济南优化seo网站建设
  • 宜昌网站建设扁平化设计风格的网站
  • 网站 的空间做市场调查的网站免费
  • 网站建设人力资源人员配置傻瓜式网页制作工具
  • 外贸网站建设公司流程图wordpress 多个置顶
  • 没有公司可以做网站吗石家庄网站建设行业公司
  • 商河网站建设官方网站怎么备案
  • 郑州网站设计哪家公司好梓潼网站建设
  • hostinger建站wordpress织梦网站更新Html