Foxtable(狐表)用户栏目专家坐堂 → [求助]如何使用httpclient操作API接口


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

主题:[求助]如何使用httpclient操作API接口

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


加好友 发短信
等级:幼狐 帖子:150 积分:1088 威望:0 精华:0 注册:2012/11/16 10:21:00
[求助]如何使用httpclient操作API接口  发帖心情 Post By:2022/12/5 15:10:00 [只看该作者]

老师,
请问要如何使用httpclient操作API接口呢?
接口文件如下:
http: / / api.amtxts.com/?p=1130

 回到顶部
帅哥,在线噢!
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110581 积分:562801 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2022/12/5 15:18:00 [只看该作者]

大概这样

Dim hc As New HttpClient("http://ERPAPI站点/INDX/ADDDATA")
hc.Headers.Add("Authorization","授权接口所获取的值")
hc.ContentType = "application/json"
Dim jo As New JObject
jo("PGM") = "INDX"
jo("INDX") = new jarray
Dim jo2 As New JObject
jo2("IDX_NO") = "03"
jo2("NAME") = "文具类"
jo("INDX").add(jo2)
hc.Content = jo.ToString
Dim ret As String = hc.GetData()
MsgBox(ret )


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


加好友 发短信
等级:幼狐 帖子:150 积分:1088 威望:0 精华:0 注册:2012/11/16 10:21:00
  发帖心情 Post By:2022/12/5 15:34:00 [只看该作者]

老师,
我的语法如下,返回的错误讯息是『未将对象引用设置到对象的实例』,请问这样写有错吗?
Dim cmd As New SQLCommand
cmd.C
cmd.CommandText = "XXX"
Dim dt As DataTable = cmd.ExecuteReader
For Each dr As DataRow In dt.Select("", "FEATURE_GROUP_CODE")
    Functions.Execute("SunlikeLoginToken", "XXX", "XXX", "XXX", "XXX")
    Dim hc As New HttpClient("http://192.168.0.6/erpapi/INDX/ADDDATA")
    hc.Headers.Add("Authorization", Vars("sunlikeToken"))
    hc.C
    Dim jo As New JObject
    jo("PGM") = "INDX" '程序代号
    jo("INDX") = New JObject '新增中类资料 
    jo("INDX")("IDX_NO") = dr("FEATURE_GROUP_CODE").ToString
    jo("INDX")("NAME") = dr("FEATURE_GROUP_NAME").ToString
    If dr("REMARK").ToString <> "" Then
        jo("INDX")("REM") = dr("REMARK").ToString
    End If 
    jo("INDX")("IDX_UP") = "0000000000"
    hc.Content = jo.ToString
    Dim ret As String = hc.GetData
    Output.Show(ret)
Next

 回到顶部
帅哥,在线噢!
有点蓝
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110581 积分:562801 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2022/12/5 15:53:00 [只看该作者]

应该是单元格有空值导致的

jo("INDX")("IDX_NO") = dr("FEATURE_GROUP_CODE").ToString
改为
jo("INDX")("IDX_NO") = cstr(dr("FEATURE_GROUP_CODE"))

其它列一样,自己改改

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


加好友 发短信
等级:幼狐 帖子:150 积分:1088 威望:0 精华:0 注册:2012/11/16 10:21:00
  发帖心情 Post By:2022/12/5 15:59:00 [只看该作者]

老师,
我修改之后错误讯息变成『凭证为空』,我想看看我提交的内容是啥?
请问有什么方式能知道我这边提交上去的内容呢?

[此贴子已经被作者于2022/12/5 16:00:27编辑过]

 回到顶部
帅哥,在线噢!
有点蓝
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110581 积分:562801 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2022/12/5 16:02:00 [只看该作者]

hc.Content = jo.ToString
msgbox(hc.Content)

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


加好友 发短信
等级:幼狐 帖子:150 积分:1088 威望:0 精华:0 注册:2012/11/16 10:21:00
  发帖心情 Post By:2022/12/5 16:09:00 [只看该作者]

老师,请问前面的『Headers』部分,能看到吗?

 回到顶部
帅哥,在线噢!
有点蓝
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110581 积分:562801 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2022/12/5 16:40:00 [只看该作者]

msgbox(Vars("sunlikeToken"))
hc.Headers.Add("Authorization", Vars("sunlikeToken"))

 回到顶部