gpt4 book ai didi

python - 测试Flask REST服务器

转载 作者:行者123 更新时间:2023-12-03 17:04:01 24 4
gpt4 key购买 nike

我有一个微型的Flask服务器,该服务器应该从文件加载数据并在其上运行功能。此函数将返回一个DataFrame,我返回它的json版本。令我惊讶的是,这一切都很好。但是,我将如何测试呢?我在下面进行了一些尝试,但是我对Flask(也不是REST)的理解还不够好:

#!/home/thomas/python
from flask import Flask
from flask.ext.restful import Resource, Api

app = Flask(__name__)
api = Api(app)

class UniverseAPI(Resource):
def get(self):
import pandas as pd
frame = pd.read_csv("//datasrv10//data$//AQ//test.csv", index_col=0, header=0)
return frame.to_json()


api.add_resource(UniverseAPI, '/data/universe')


我很高兴在这里包括我的一些尝试。我已经阅读了官方文档。

我应该说明测试的意思。我可以在我的linux服务器上运行它,并可以使用请求包提取所有必需的信息。但是,我想创建一个不需要在本地主机上启动服务器的单元测试。我想我已经与FLASK测试客户端合作过。但是,现在的问题是请求响应对象和flask响应对象对待底层json字符串的方式大不相同。所以我想我的问题更多与json字符串问题有关,而不是FLASK。感谢您的所有宝贵意见

最佳答案

好吧,编写REST API的基础本质上是一组设计原则。我对此的理解是基于Miguel Grinberg的这篇文章,http://blog.miguelgrinberg.com/post/designing-a-restful-api-with-python-and-flask

在其中,他谈到了REST API的方式:


“无状态”-与服务的所有交互都可以使用一个请求中的信息进行。
建立在使用HTTP请求(例如GET,PUTS和POST)从URI访问“资源”的基础上。资源可以是商店中的订单,Web应用程序中的任务或任何您喜欢的东西。


关于服务器应如何标准化其自身与客户端之间的所有通信形式,指示其是否可以进行缓存等还有很多其他内容。但是,从最初的设计角度来看,这就是他所说的“重点”:


“设计符合REST准则的Web服务或API的任务将成为>确定不同资源将被公开以及如何受到不同请求方法影响的练习>。”


如果您正在寻找一个有趣的REST API示例,它可能适合您的兴趣(我知道这是我的意思),那么reddit就是开源的。这是一个相关的示例,可以查看它们如何尝试和构造请求背后的交互:http://www.reddit.com/dev/api

关于python - 测试Flask REST服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25163178/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com