在Flask中,需要从服务器端发出POST请求。
假设我们有:
@app.route("/test", methods=["POST"])
def test():
test = request.form["test"]
return "TEST: %s" % test
@app.route("/index")
def index():
# Is there something_like_this method in Flask to perform the POST request?
return something_like_this("/test", { "test" : "My Test Data" })
我没有在Flask文档中找到任何特定的东西。有人说urllib2.urlopen
是问题所在,但我未能将Flask和urlopen
。真的有可能吗?
提前致谢!
是的,要发出POST请求,您可以使用urllib
,请参阅文档。
但是,我建议改用requests模块。
编辑 :
我建议您重构代码以提取常用功能:
@app.route("/test", methods=["POST"])
def test():
return _test(request.form["test"])
@app.route("/index")
def index():
return _test("My Test Data")
def _test(argument):
return "TEST: %s" % argument
问题内容: 我正在尝试发出POST请求以检索有关一本书的信息。这是返回HTTP代码的代码:302,已移动 当我从浏览器尝试时,可以从以下页面进行操作:http : //www.bkstr.com/webapp/wcs/stores/servlet/BuybackMaterialsView?langId=-1&catalogId=10001&storeId=10051&schoolStoreId=1
本文解释了如何禁用urllib3中的警告,但我使用的是带有请求模块的对象。出现警告是因为(ssl)参数设置为,以便访问页。 例如。
问题内容: 我知道可以通过以下方法在Flask中设置请求大小的整体限制: 但是我想确保一个特定的路由将不接受特定大小的POST数据。 问题答案: 你需要检查一下特定路线本身;你可以随时测试内容长度;是一个或整数值: 在访问请求中的表单或文件数据之前,请执行此操作。 你可以将其变成装饰器以供查看: 然后将其用作: 本质上这就是Flask所做的;当你尝试访问请求数据时,在尝试解析请求正文之前,首先检查
问题内容: 如何在node.js中使用数据发出出站HTTP POST请求? 问题答案: 这是一个使用node.js向Google Compiler API发出POST请求的示例: 我已经更新了代码,以显示如何从文件而不是硬编码的字符串发布数据。它使用async 命令来实现此目的,并在成功读取后发布实际代码。如果有错误,则抛出该错误,如果没有数据,则该过程以负值退出以指示失败。
我在一个简单的Spring Boot应用程序中有一个Thymeleaf模板。该模板包含一个表中的列表,如下所示: 我想启用编辑和删除功能,根据表中的最后一个单元格。但目前这两个请求都是针对HTTP GET的。这对于从服务器获取人员详细信息进行编辑的edit很好,但是delete应该会触发POST请求,因为服务器上的数据发生了变化。 调用GET的按钮版本时的错误是: 我使用GET来触发编辑,因为除了
问题内容: 我有一些旧代码通过jQuery的post方法发出AJAX POST请求,看起来像这样: 只是具有一些基本字符串属性的javascript对象。 我正在移动我们的内容以使用Angular,并且我想用$ http.post代替此调用。我提出以下内容: 当我这样做时,我从服务器收到500错误响应。使用Firebug,我发现这发送了如下请求体: 成功的jQuery 发送如下内容: 我要命中的端