Foxtable(狐表)用户栏目专家坐堂 → [求助]使用JSON提交数据出错


  共有3799人关注过本帖树形打印复制链接

主题:[求助]使用JSON提交数据出错

帅哥哟,离线,有人找我吗?
pear681411
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:91 积分:878 威望:0 精华:0 注册:2018/9/18 23:11:00
[求助]使用JSON提交数据出错  发帖心情 Post By:2019/9/16 11:54:00 [显示全部帖子]

我使用JArray作为数据请求,返回400错误,请问是什么原因
图片点击可在新窗口打开查看此主题相关图片如下:2.png
图片点击可在新窗口打开查看
啊?


 回到顶部
帅哥哟,离线,有人找我吗?
pear681411
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:91 积分:878 威望:0 精华:0 注册:2018/9/18 23:11:00
  发帖心情 Post By:2019/9/16 11:56:00 [显示全部帖子]


图片点击可在新窗口打开查看此主题相关图片如下:1.png
图片点击可在新窗口打开查看

 回到顶部
帅哥哟,离线,有人找我吗?
pear681411
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:91 积分:878 威望:0 精华:0 注册:2018/9/18 23:11:00
  发帖心情 Post By:2019/9/16 13:58:00 [显示全部帖子]

无法输出返回值,弹窗提示: 远程服务器返回错误: (400) 错误的请求。

图片点击可在新窗口打开查看此主题相关图片如下:3.png
图片点击可在新窗口打开查看


 回到顶部
帅哥哟,离线,有人找我吗?
pear681411
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:91 积分:878 威望:0 精华:0 注册:2018/9/18 23:11:00
  发帖心情 Post By:2019/9/16 14:25:00 [显示全部帖子]

但是使用postman 提交可以提交成功

 回到顶部
帅哥哟,离线,有人找我吗?
pear681411
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:91 积分:878 威望:0 精华:0 注册:2018/9/18 23:11:00
  发帖心情 Post By:2019/9/16 14:25:00 [显示全部帖子]

同样的接口,同样的数据,采用post 提交

 回到顶部
帅哥哟,离线,有人找我吗?
pear681411
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:91 积分:878 威望:0 精华:0 注册:2018/9/18 23:11:00
回复:(有点蓝)完整代码,和接口说明发上来  发帖心情 Post By:2019/9/16 14:36:00 [显示全部帖子]

'上传考勤数据到指定接口'
Dim st As New Date(1970,1,1,8,0,0)
Dim timestamp As Integer = CInt((Date.Now - st).TotalSeconds()) '时间戳
Dim noncestr As String = Rand.NextString(16) '随机字符
Dim secret As String = "tmfvtbp8My6Fbezqh9Pe29uy"
Dim psecret As String = "TuEMaXb7FuRVoTFxJFTS0sZe"
Dim pretreatmentStr = noncestr & "_" & timestamp & "_" & secret & "_" & psecret
Dim signStr As String = Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile(pretreatmentStr, "SHA1").ToLower()
Dim hc As New HttpClient("http://186.67.170.78:81/api/open/rn/v3/attendance")
hc.Headers.Add("keyId","d82ef3d0-514e-4864-bcf1_83f77028-216a-477f-a28f")
hc.Headers.Add("ts",timestamp)
hc.Headers.Add("rCode",noncestr)
hc.Headers.Add("signature",signStr)

Dim jo As new JObject
jo("workerId") = "833AD077-6943-4F4E-90F3-AD642C1C41C2"
jo("entry") = "Entry"
jo("mode") = "IDCard"
jo("photo") = ""
jo("attendanceTime") = "2019-09-16 08:03:00"
jo("sn") = "ZK-T1236548N"
jo("lat") = 0
jo("lng") = 0
Dim ja As New JArray
ja.Add(jo)
hc.Content = ja.ToString

Dim ret As String = hc.GetData
output.show(ret) 


图片点击可在新窗口打开查看此主题相关图片如下:1.png
图片点击可在新窗口打开查看

图片点击可在新窗口打开查看此主题相关图片如下:2.png
图片点击可在新窗口打开查看
[此贴子已经被作者于2019/9/16 14:38:01编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
pear681411
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:91 积分:878 威望:0 精华:0 注册:2018/9/18 23:11:00
  发帖心情 Post By:2019/9/16 15:00:00 [显示全部帖子]

没有.net的调用实例,完整接口不方便发送,这是上传接口,下载接口没有问题,有没有可能是咱们使用数组作为body有bug或者其它问题?
因为其它使用post方式传的数据都是json,只有这个使用的数组。

 回到顶部
帅哥哟,离线,有人找我吗?
pear681411
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:91 积分:878 威望:0 精华:0 注册:2018/9/18 23:11:00
  发帖心情 Post By:2019/9/17 8:37:00 [显示全部帖子]

问题解决了:必须添加  hc. contenttype 指定数据格式为json
[此贴子已经被作者于2019/9/17 8:39:38编辑过]

 回到顶部