鱼C论坛

 找回密码
 立即注册
查看: 3348|回复: 11

requests请求头中的data问题

[复制链接]
发表于 2021-4-24 20:37:37 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
data中的字符串本来就是键值对,遇到过data里面还有大括号的,这种有用json.dumps(data)的方式,但有的就不行,不知道到底data这种字段应该怎么来发起请求

比如最近遇到这样的data

{code: 15}
如果用data={'code': '15'}的方式就出错
如果用data='code=15'的方法就正确

这到底是问题出在哪里
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2021-4-24 20:51:21 | 显示全部楼层
看你请求头的content-type类型
application/x-www-form-urlencoded  这种类型支持data的类型是字符串(需要headers参数)和字典 requests.post(data=)
application/json 这种类型支持json格式
requests.post(url=url,data=data,headers=header)/requests.post(url=url,data=data)
requests.post(url=url,json=data)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-4-24 23:13:29 | 显示全部楼层
常见3种请求
application/x-www-form-urlencoded,GET请求  :
    requests.get(url, params=单层字典)
application/x-www-form-urlencoded,POST请求  :
    requests.post(url, data=单层字典)
application/json,GET/POST/PUT等请求:
    requests.post(url, data=json.dumps(可嵌套字典和列表的字典))
    requests.post(url, json=可嵌套字典和列表的字典)
multipart/form-data请求  这个太复杂了略去

params参数和其他参数并不是互斥的  data和json只能选一个
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-4-25 08:10:04 From FishC Mobile | 显示全部楼层
kogawananari 发表于 2021-4-24 23:13
常见3种请求
application/x-www-form-urlencoded,GET请求  :
    requests.get(url, params=单层字典)
...

搭车问一下,哪里有关于请求头和响应头数据类型的详细介绍,我现在虽然写了好几百行的前后台代码,但是对于这个问题还是迷迷糊糊,有时前后台格式不匹配,导致数据无法正常传输
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-4-25 10:33:31 | 显示全部楼层
wp231957 发表于 2021-4-25 08:10
搭车问一下,哪里有关于请求头和响应头数据类型的详细介绍,我现在虽然写了好几百行的前后台代码,但是对 ...


只讲前端吧  后端我用django试了都能取到

form标签的onsubmit事件来请求  必然是application/x-www-form-urlencoded类型

ajax直接请求不配置 必然是application/json类型

multipart/form-data得用ajax传输new formData对象 修改配置:
jQuery
$.ajax({
    type: "POST",  
    data: formData,
    ...
    processData: false,
    contentType: false,
axios
axios.post(url,formData,{
          headers:{'Content-Type':'multipart/form-data'}
        }).then
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-4-30 07:11:27 From FishC Mobile | 显示全部楼层
kogawananari 发表于 2021-4-25 10:33
只讲前端吧  后端我用django试了都能取到

form标签的onsubmit事件来请求  必然是application/x-www- ...

再问一下,那个多个用户同时修改一个表的不同记录,会引起类似死锁的现象吗,服务器会当掉吗
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-4-30 12:56:03 | 显示全部楼层
wp231957 发表于 2021-4-30 07:11
再问一下,那个多个用户同时修改一个表的不同记录,会引起类似死锁的现象吗,服务器会当掉吗

看锁的等级  分  表级锁 行级锁  
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-4-30 13:02:05 | 显示全部楼层
kogawananari 发表于 2021-4-30 12:56
看锁的等级  分  表级锁 行级锁

就是我做了一个查询模块,思想就是设计一个表,每次查询都清空该表,然后填充数据,最后渲染到网页,现在的问题是,每个用户都有该查询权限,那么会造成抢表的事,
我如果在代码中加入以下两条语句  是否会成功呢 ,会在客户端造成一些莫名其妙的现象  还是服务端当机
lock table cgf.yuebao write;
  此处放置 我原来的一大堆sql语句(查询模块  主要操作cgf.yuebao 表)
unlock TABLEs;
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-4-30 14:09:14 | 显示全部楼层
wp231957 发表于 2021-4-30 13:02
就是我做了一个查询模块,思想就是设计一个表,每次查询都清空该表,然后填充数据,最后渲染到网页,现在 ...

存储过程+事务
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-4-30 14:10:48 | 显示全部楼层
wp231957 发表于 2021-4-30 13:02
就是我做了一个查询模块,思想就是设计一个表,每次查询都清空该表,然后填充数据,最后渲染到网页,现在 ...

unlock 狗都不用  就算只有一个用户 你写unlock也会翻车  特别是比对差异的那种查询
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-4-30 16:43:14 | 显示全部楼层

这两样 我都不会用
不过我大致搜了一下,也没发现 存储过程+事务   如何能避免大家抢一个表用
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-4-30 18:08:04 | 显示全部楼层
wp231957 发表于 2021-4-30 16:43
这两样 我都不会用
不过我大致搜了一下,也没发现 存储过程+事务   如何能避免大家抢一个表用

你觉得为什么宕机  因为没有原子性

比如两个人走同一个流程  如果这个流程不是事务
  一个人语句执行到一半 另一个人见缝插针也开始执行语句 把表锁了
两个人最终变成互相等 或者更严重的后果

如果是事务的话  要等前一个人全部流程走完 才能到下一个  这样就避免了去抢着执行语句

而unlock是另外一回事了  如果用了unlock和nolock
哪怕只有你一个人走流程  数据也会不准确(幻读)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-1-16 00:14

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表