楼主: fcfc2013
6917 6

[问答] R语言 用httr包中POST 请求数据 返回 :400 [推广有奖]

  • 3关注
  • 1粉丝

已卖:1169份资源

博士生

76%

还不是VIP/贵宾

-

威望
0
论坛币
7223 个
通用积分
6.2147
学术水平
12 点
热心指数
26 点
信用等级
9 点
经验
14348 点
帖子
307
精华
0
在线时间
285 小时
注册时间
2013-2-13
最后登录
2020-2-7

楼主
fcfc2013 发表于 2018-3-8 22:25:12 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
  1. library("httr")
  2. headers <- c(
  3.   "Content-Type" = "application/x-www-form-urlencoded; charset=UTF-8",
  4.   "Accept" = "application/json, text/javascript, */*; q=0.01",
  5.   "Accept-Language" = "zh-CN",
  6.   "Accept-Encoding" = "gzip, deflate",
  7.   "User-Agent" = "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.2; WOW64; Trident/7.0; .NET4.0C; .NET4.0E)",
  8.   "X-Requested-With" = "XMLHttpRequest"
  9. )


  10. GetCurrentCarList_url <- "http://59.175.135.157:8088/TopGps/Public/GetCurrentCarList" # 获取车辆明细

  11. cookies <- "gc****************qsm0"

  12. payload <- list('orgId' = 0,
  13.                 'hasChild' = 1
  14.                )      # GetCurrentCarList body

  15. GetCurrentCarList <- POST(GetCurrentCarList_url, add_headers(.headers = headers), set_cookies(.cookies = cookies), body = payload, encode ="form")
复制代码
POST(GetCurrentCarList_url, add_headers(.headers = headers), set_cookies(.cookies = cookies), body = payload, encode ="form")   是不是post写法 哪里出错, 运行后返回 status code:400

TIM截图20180308222307.png

二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:post TTR R语言 POS 求数据 httr POST

回帖推荐

tsky 发表于7楼  查看完整内容

r是一个raw类型,用rawToChar先做转换,再用fromJSON做数据转换 library(rjson) tmp

沙发
菊花冰糖水 发表于 2018-3-9 09:50:07
检查一下你提交的数据类型和后台要求的一致性

藤椅
fcfc2013 发表于 2018-3-9 12:10:17
菊花冰糖水 发表于 2018-3-9 09:50
检查一下你提交的数据类型和后台要求的一致性
我先用Postman测试 post提交成功获取到数据后, 复制Postman里的post相关参数;

在R中 post就不成功

板凳
fcfc2013 发表于 2018-3-9 16:28:51
折腾成功了

在content返回的数据,postman里是返回的json
R post后 返回的是 :content:raw[1:7533] 7b 52 6f 77...   (二进制格式)???

我用 :
r <- content(GetCurrentCarList, "raw")
writeBin(r, "myfile.txt")  

这个应该是直接返回 json格式, 还是 要用 jsonlist包再转换???
已有 1 人评分论坛币 学术水平 热心指数 收起 理由
cheetahfly + 20 + 1 + 1 自行解决后不忘分享

总评分: 论坛币 + 20  学术水平 + 1  热心指数 + 1   查看全部评分

报纸
fcfc2013 发表于 2018-3-9 18:04:48 来自手机
raw里面的数据会是压缩数据吗?

地板
fcfc2013 发表于 2018-3-10 16:49:44
fcfc2013 发表于 2018-3-9 18:04
raw里面的数据会是压缩数据吗?
raw 是R语言 的一种类型;

7
tsky 发表于 2018-4-7 22:58:41
fcfc2013 发表于 2018-3-9 16:28
折腾成功了

在content返回的数据,postman里是返回的json
r是一个raw类型,用rawToChar先做转换,再用fromJSON做数据转换
library(rjson)
tmp <- fromJSON(rawToChar(r))

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

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2025-12-31 00:40