以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  请求头application/json返回415  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=196082)

--  作者:jframe
--  发布时间:2025/3/27 17:14:00
--  请求头application/json返回415
有一台云打印机,请求头是hc.ContentType = "application/x-www-form-urlencoded;charset=UTF-8",可以使用.
换了另一个牌子的云打印机,请求头是hc.ContentType = "application/json;charset=UTF-8",就提示错误415,请求头有问题,
请问是foxtable不能用这个请求头吗?
图片点击可在新窗口打开查看此主题相关图片如下:企业微信截图_17430668093258.png
图片点击可在新窗口打开查看
--------说明-------
请求接口:
https://open.xpyun.net/api/openapi/xprinter/queryPrinterStatus
请求方式:
POST
特别注意:
1、开发者自己写的请求以表单方式提交数据,请求头需要使用Content-Type: application/json;charset=UTF-8,请勿使用其它方式提交数据;
2、打印内容内(标签除外)大于号和小于号需要经过转译才能正常打印。其中,“<”用“&lt”表示,“>”用“&gt”表示;
3、1mm=8dots。

[此贴子已经被作者于2025/3/27 17:33:37编辑过]

--  作者:有点蓝
--  发布时间:2025/3/27 17:16:00
--  
接口说明,以及使用的完整代码发上来

--  作者:jframe
--  发布时间:2025/3/27 17:23:00
--  

[此贴子已经被作者于2025/3/27 17:28:10编辑过]

--  作者:jframe
--  发布时间:2025/3/27 17:28:00
--  
Dim hc As New HttpClient("https://open.xpyun.net/api/openapi/xprinter/queryPrinterStatus") \'POST
hc.C
ontentTyp
e = "application/json;charset=UTF-8" \'请求头
hc.FormData.Add("user", "350349222@qq.com")
hc.FormData.Add("timestamp", "1743067289")
hc.FormData.Add("sign", "b14174b838969794b8535f7b7ba80e69c05b656c")
hc.FormData.Add("sn", "")
Dim ret As String = hc.getData()
\'返回的ret为空
Dim jo As JObject = JObject.Parse(ret)
[此贴子已经被作者于2025/3/27 17:41:57编辑过]

--  作者:有点蓝
--  发布时间:2025/3/27 17:40:00
--  
FormData.Add是表单模式,只能使用x-www-form-urlencoded

json模式不能使用FormData.Add,要发送json格式字符串

……
hc.ContentType = "application/json;charset=UTF-8" \'请求头
hc.Content = "{\'user\':\'350349222@qq.com\',\'..........}"
Dim ret As String = hc.getData()
[此贴子已经被作者于2025/3/27 17:41:28编辑过]

--  作者:jframe
--  发布时间:2025/3/27 18:04:00
--  
可以了,谢谢老大