首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >使用JQuery .load()将JSON数据发送到Flask服务器

使用JQuery .load()将JSON数据发送到Flask服务器
EN

Stack Overflow用户
提问于 2020-07-31 07:57:30
回答 1查看 401关注 0票数 0

我试图使用JQuery的.load()函数将数据发送到我的Flask服务器,并使用它呈现一个加载到调用元素中的<div>。我的电话看起来是这样的:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$("#element").load(
  "/get_data",
  {"info": info} // this is the problem
)

然而,当我试图在我的Flask后端访问这些数据时,数据是表单字节字符串。(使用request.get_data()进行访问会产生一个字节字符串,而request.get_json()则生成None)。

这并不让我感到意外,因为当我使用.ajax()请求时,也会发生相同的行为。使用Ajax,我只需使用data: JSON.stringify({"info":info}),就可以将json.loads轻松读取的字符串发送到Flask后端。让我困惑的是,当我尝试使用.load()进行相同的数据打包时,对服务器的请求是GET而不是POST

根据.load()文档,“如果数据是作为对象提供的,那么就使用POST方法;否则,假设是GET。”我不明白为什么数据是JSON会这样改变.load()的行为。

我很想了解这种行为,但是我的问题是如何使用JQuery的.load()将数据以JSON的形式作为POST请求发送到Flask后端,或者至少作为json (例如JSON字符串)的可读性?

EN

回答 1

Stack Overflow用户

发布于 2020-07-31 08:05:03

你的代码应该能用。数据作为{"info": info},这是一个.load应该作为POST发送的对象。确保从服务器获得对象。另外,确保您的Flask视图接受POST方法:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
from flask import Flask, request, Response
import json

@app.route('/get_data', methods = ['GET', 'POST'])
def get_data():
    payload_dict = json.loads(request.data.decode('utf-8'))
    # or try payload_dict = request.json
    print(payload_dict["info"])
    return Response(json.dumps({"info_response": "hello"}), mimetype='application/json')

并确保在info中定义了{"info": info}

考虑使用getJSON:https://api.jquery.com/jQuery.getJSON/

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63195230

复制
相关文章
numpy 插值
第二个参数是需要pad的值,参数输入方式为:((before_1, after_1), … (before_N, after_N)),其中(before_1, after_1)表示第1轴两边缘分别填充before_1个和after_1个数值;
全栈程序员站长
2022/09/22
6700
numpy 插值
用Pso思想求解y = x^2的最小值
mpl.rcParams['font.sans-serif'] = ['SimHei'] # 指定默认字体
算法与编程之美
2023/01/03
4970
Java真的只有值传递?
值传递(pass by value)是指在调用函数时将实际参数复制一份传递到函数中,这样在函数中如果对参数进行修改,将不会影响到实际参数。
一觉睡到小时候
2019/07/02
7050
Java真的只有值传递?
Echarts设置y轴值间隔
需求:如图,y轴之间的距离太小,这样就太过于拥挤了,现在要修改echarts里面的属性,设置y轴值间隔让图表看上去舒服一些。
王小婷
2019/03/22
9.2K0
Echarts设置y轴值间隔
java漫谈-Java只有值传递
文中用遥控器(引用)操作电视(对象)为例形象的说明了该引用名词的含义,同时在对定义的“引用”该名词的注释中提到:
WindCoder
2020/01/24
6470
为什么Java只有值传递
值传递: 调用函数时,将实参复制一份传给函数,函数中修改参数时不会影响实参 引用传递:调用函数时,将实参的地址传给函数,函数中修改参数会影响实参。 判断是值传递还是引用传递的标准,和传递参数的类型是没有关系的。
Qwe7
2022/04/01
4720
Numpy库之swapaxes(a,x,y)方法理解
ndarray对象的操作函数之np.swapaxes(a,x,y) 等价于 a.swapaxes(x,y)
狼啸风云
2021/03/03
1.6K0
Numpy中找出array中最大值所对应的行和列
Python特别灵活,肯定方法不止一种,这里介绍一种我觉得比较简单的方法。 如下图,使用x == np.max(x) 获得一个掩模矩阵,然后使用where方法即可返回最大值对应的行和列。 where返回一个长度为2的元组,第一个元素保存的是行号,第二个元素保存的是列号。
卡尔曼和玻尔兹曼谁曼
2019/01/22
6.5K0
Numpy中找出array中最大值所对应的行和列
求X值问题
已知有整数x,x + 100为一个平方数、x + 168也是一个平方数、请写出计算程序求出x的所有可能?
江涛学编程
2020/08/26
4660
Java中真的只有值传递么?
关于这个问题应该是存在争议的。根据测试出来的结果和我们自己的经验,以及口口相传或是上学时老师讲的,我们认为是第一种。但第二种说法的呼声也很高,渐渐地我们也认为第2中才是对的。那么下面我们就来分析一下这个问题。
编程大道
2020/02/11
1.1K0
Java 基础概念·Java 只有值传递
当我们调用一个有参函数的时候,会把实际参数传递给形式参数。在程序语言中,这个传递过程中有两种情况,即值传递和引用传递。
数媒派
2022/12/01
4260
Scipy和Numpy的插值对比
插值法在图像处理和信号处理、科学计算等领域中是非常常用的一项技术。不同的插值函数,可以根据给定的数据点构造出来一系列的分段函数。这一点有别于函数拟合,函数拟合一般是指用一个给定形式的连续函数,来使得给定的离散数据点距离函数曲线的总垂直距离最短,不一定会经过所有的函数点。比如在二维坐标系内,用一条直线去拟合一个平面三角形所对应的三个顶点,那么至少有一个顶点是不会落在拟合出来的直线上的。而根据插值法所得到的结果,一定是经过所有给定的离散点的。本文针对scipy和numpy这两个python库的插值算法接口,来看下两者的不同实现方案。
DechinPhy
2022/05/09
3.6K0
Scipy和Numpy的插值对比
[L5]快速掌握Series~过滤Series的值和缺失值的处理
由于在公众号上文本字数太长可能会影响阅读体验,因此过于长的文章,我会使用"[L1]"来进行分段。这系列将介绍Pandas模块中的Series,本文主要介绍:
触摸壹缕阳光
2020/05/13
10.4K0
为什么说Java中只有值传递?
相信我,当你正在看这篇文章的时,说明你对值传递和引用传递的理解大概率是错误的。如果你理解的是正确的,你应该也不会来看这篇文章。
诺浅
2020/08/19
5600
【说站】python如何过滤列表中的唯一值
1、使用collections.Counter函数对列表进行计数,并通过列表推导式过滤出非唯一值,过滤出计数大于1的值。
很酷的站长
2022/11/24
4.8K0
【说站】python如何过滤列表中的唯一值
numpy笔记_python numpy array
ndarray的可以对整块数据执行数学运算,语法与标量元素的元素的运算一致。 如:
全栈程序员站长
2022/09/20
6250
cssjshtml vue.js if过滤 if多个值
通过表单内每行根据status的数值,控制是否显示button。过滤数值的是一个数组列表。
葫芦
2019/08/19
3.4K0
[答疑]解析美女出的一道状态机题(x、y和z值)
状态机如下图所示。如果对象创建之后,事件e2、e1、e3、e4、e1和e5按给定顺序发生,请问,事件发生结束后,变量x、y和z值分别是_______________________。
用户6288414
2019/09/23
7920
[答疑]解析美女出的一道状态机题(x、y和z值)
numpy.array
numpy.array(object, dtype=None, copy=True, order='K', subok=False, ndmin=0)
狼啸风云
2019/11/28
5590
excel挑选出每一行的最大值或最小值
Evacloud 撰写论文结果比较的时候需要跳出各个算例的最好的算法和最坏的算法,这时候我们就需要将每一行中的最大值或者最小值挑选出来。 框选出需要标注的区域文本,此处是A1:J100,点击开始选项卡
演化计算与人工智能
2021/04/02
3.6K0
excel挑选出每一行的最大值或最小值

相似问题

亮度问题Ubuntu 18.04 LTS

90

GNOME闪回中Qt Creator的AppMenu

20

在Ubuntu 18.04 LTS上运行Gnome盒

10

从终端修改ubuntu 20.04 LTS中的gnome闪回面板

20

无法从Ubuntu GNOME 16.04.4更新到18.04 LTS

20
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文