优秀的编程知识分享平台

网站首页 > 技术文章 正文

pb 自带http对象inet的使用

nanyue 2025-05-21 15:25:19 技术文章 9 ℃

pb经常需要和三方系统进行对接,其中好多都是webapi的接口,这个时候就可以使用inet对象可以直接进行http请求,使用inernetresult接收返回信息。此对象为异步请求。

使用方法如下:

1、创建一个标准类inet及inernetresult的对象:nvo_inet,nvo_inernetresult。


2、在wiindow中创建实例对象:invo_inet,invo_inetresultupload,也可以创建本地对象。

3、编写代码:

发送代码:

long ll_return
long ll_length
blob lbl_data
string ls_headers
string pathurl
ls_headers = ""
inputData = "入参"
pathurl = "URL地址"
lbl_data = blob(inputData,EncodingUTF8!)
ll_length = len(lbl_data)
//ls_headers = "Content-Type: text/xml~n" + "Content-Length: " + String( ll_length ) + "~n~n"
ls_headers = "Content-Type: text/xml~n" + "Content-Length: " + String( ll_length ) + "~n~n"
ll_return = invo_inet.posturl( pathurl,lbl_data,ls_headers,il_port,invo_inetresultupload)
if ll_return < 1 then
	messagebox('',ll_return)
end if

接收代码(写入到nvo_inetresultupload的internetdata方法中,其中n_json为自定义的json解析对象):

any la_data
int li_value
if isnull(data) then
else
	n_json lnvo_json
	lnvo_json = create n_json
	
	ls_data = string(data,EncodingUTF8!)
	li_value =  lnvo_json.parse( ls_data)
	if li_value = 0 then
		la_data = lnvo_json.getitem( "access_token")
		gs_access_token = string(la_data)
		messagebox('提示','登陆成功')
	else
		messagebox('json 解析失败',ls_data)
	end if
   destroy lnvo_json
end if
return 1

实际使用时可以做一些优化

20250428

最近发表
标签列表