问题标签 [flask-restful]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - 从 angularjs 加载 REST 资源时等待时间极长
我正在构建一个访问烧瓶/python RESTful API 的前端。我正在使用 AngularJS v1.2.16。
出于某种原因,加载 REST 资源需要花费大量时间,而且大部分时间都在等待。我的理解是“等待”是测量第一个字节的时间——我的所有服务都在本地运行(前端、API 和数据库)。
鉴于服务都在本地运行,我不知道如何调试它。有人对在哪里看有任何提示吗?我检查了我所有的方法,它们运行得相当快(每个 REST 调用不到 100 毫秒)。当我使用postman时,API 几乎立即返回。
关于如何解决等待的任何想法,似乎只有在通过 Angular 加载 RESTful 资源时才会出现这种情况。角度 $http 获取请求相当简单:
编辑:
- 该问题仅出现在 Google Chrome 常规模式中。
- 使用隐身模式时 GET 请求很快。
rest - REST API 的烧瓶登录
我正在使用 Flask Restful 实现 REST API,并希望为用户添加基于会话的身份验证。目前我没有实现网络应用程序。我想知道 Flask-Login 扩展是否只能用于 Web 应用程序,还是我也可以将它们用于我的 REST 应用程序?
javascript - 使用 python flask-restful 和消费 AngularJS(使用 $http)时出现 CORS(跨源...)错误
我使用 python 程序来提供带有 Flask-restful 扩展的宁静服务。我想用 AngularJS 应用程序来使用它。我的本地主机上一切正常(目前)。为了使用服务,我使用 AngularJS $http,如下所示。每次我打电话时,我都会收到这个该死的 CORS 错误(见下文)......
在搜索了一天半之后,我尝试了许多不同的东西,但没有什么能帮助我防止这个问题,我真的不知道还能做什么。不幸的是,flask-restful 网站上没有官方文档。
我不确定我是否遗漏了任何明显的东西,或者这是否真的很难在这种技术组合中工作......
在我的帖子末尾,您会看到我已经尝试过的事情的列表......
顺便说一句,一个简单curl
的工作......
我会很高兴提供任何帮助!
这是相关的python代码:
这是我的 Angularjs 服务代码:
当我尝试执行 get 或 post 两次时,我得到了这个 cors 错误......(当然还有我的错误警报)
如果我“只”做一个GET
错误发生在 get 本身。如果我这样做,POST
我会在OPTIONS
. 这些是帖子的标题(从萤火虫网络选项卡复制)
我已经试过了
@cors.crossdomain(origin='*')
在 get 和 post 方法之上添加( https://github.com/twilio/flask-restful/pull/131)- 将此添加
api.decorators=[cors.crossdomain(origin='*')]
到整个 api (对于烧瓶休息的 CORS 上的 TypeError) - 如您所见,我已经关注了此处提供的答案之一的链接(Flask RESTful cross-domain issue with Angular: PUT, OPTIONS methods),但我没有得到实际答案。我不想重写任何后端,options 方法对我的课程也没有帮助......
flask - Flask(使用 Flask-RESTful)不解析 JSON 有效负载
我在 Angular 中创建了一个前端,在 Flask 中创建了一个带有 RESTful 扩展的后端。默认情况下,Angular 喜欢将数据作为有效负载发送回来(例如,这就是它在 Chrome 开发人员工具中的样子:)。我也知道它可以轻松地将其格式化为 JSON 有效负载,这对于其他端点上的一些其他情况将是可取的。
在 RESTful 中使用参数解析器来处理这个问题的最佳方法是什么?如果我将事物编码为表单数据,它们可以被 reqparse 读取,而不仅仅是像这样的原始有效负载(尽管从阅读他们的文档和源代码来看,它似乎应该能够处理更多)。我知道通过在 reqparse 中使用“位置”参数,它会在其他地方查找(默认情况下它会在form
and中查找json
)。然而,任何不是通过表单字段发送的东西似乎都没有被解析,尽管我尝试了任何东西(即使明确设置位置以包含 的每个属性request
,例如 json、args)。示例代码如下所示:
我做错了什么无法读取 args 吗?
python - 如何在 Flask-Restful 中编组嵌套的链接列表?
我想编组一个对象,以便我得到一个响应,其中包含使用来自 Flask-Restful api 的 Url、List 和 Nested 的链接列表。
但是在 Url 类中,我需要在构造函数中指定端点,这会阻止我在 List 中添加不同的 job_link_fields。如何创建链接列表?
python - 如何将 flask.url_for() 与 flask-restful 一起使用?
我已经像这样设置了 Flask restful:
我想在内部重定向到端点api.ftrecord
。
但是当我尝试这样做时:
我得到一个例外。
请问我错过了什么?
python - Flask:创建保留在多个请求中的对象
我已经能够创建在此链接的每个请求中创建的对象:http: //flask.pocoo.org/docs/appcontext/#locality-of-the-context。
我实际上是在基于http://blog.miguelgrinberg.com/post/designing-a-restful-api-using-flask-restful创建一个 API 。
我希望能够加载一次对象并让它返回处理后的响应,而不是在每次请求时加载。该对象不是数据库,只需要 unpickling 一个大文件。
我浏览了文档,但我仍然对整个 Flask 两种状态的事情感到困惑。
python - 如何将参数传递给任务队列?
我即将在 Flask/Google App Engine 中实现推送任务队列。本质上,我想发布到 API 并在任务队列中执行底层工作。
初始入口点是 REST API (flask_restful)
worker 在 url.py 中被定义为一个视图:
TaskView 是:
奇怪的是,当我在TaskView
请求对象中无处调试时,我发送到/worker
. 但是我在那里找到records
了上一次调用的对象?!
请问我错过了什么?
google-app-engine - 间歇性 Flask / Flask-restful,GAE 'Object' 不可调用类型错误
我在 Google App Engine 上使用 Flask 和 flask-restful 编写了一个非常简单的 REST API。该 API 旨在用于表示有关慈善筹款活动的数据。在这种情况下骑自行车。
除了我间歇性地从 App Engine 的日志中得到以下堆栈跟踪中显示的类型错误外,一切似乎都正常工作:
RiderStatus 对象的定义如下:
日志中调用的代码部分是创建一个新的 RiderStatus 对象,如下所示:
我想这可能是我初始化对象的方式,虽然我知道前面是 Python 中常用的,所以我为类和一个初始化方法做了一个显式的构造函数。然后这个类看起来像这样:
创作看起来像这样:
我得到一个类似的错误:
我在 POST 到该 API URL 的时间大约有 50% 会收到此错误。其他 50% 的时间它工作正常。我使用 App Engine SDk 在本地机器上运行并部署到 App Engine 的失败率大致相同。但是,当我附加调试器时,我没有得到它给出错误。通过添加调试打印调用,我确定当它失败时,它在通过 for 循环的第一次迭代中失败,并且 d 确实是一个包含我试图访问的键和值的字典。
我对 Python、Flask 和 App Engine 非常陌生,所以我肯定会在这里遗漏一些东西,但我已经阅读了我找到的所有“对象不可调用”帖子,但我没有找到任何似乎适用的内容,即我不是缺少构造函数的一部分,我没有将对象重新分配给另一种类型,也没有覆盖基类型(无论如何我都能找到)。
我不知道这是 FLASK 问题、Python 问题、flask-restful 问题、App Engine 问题还是我的问题,所以我的下一步是仅使用 Flask 重做 API,看看它是否更可靠地工作。在此期间,任何帮助都将不胜感激。