asp 如何读取api接口?

asp 如何读取api接口?,第1张

查看接口文档,发起请求后,拿到asp接口返回的数据,一般情况下为json数据。例{"code":200,"msg":"成功","data":"已签收!"}此种形式回调,解析展示即可。

<%

dim client_id:client_id="" ' 应用的API Key;

dim client_secret:client_secret="" ' 应用的Secret Key;

dim post_data:post_data="{""text"": ""2019诺思星快手电商班精华浓缩版VIP教程(5)""}"

response.write access_token

response.write post_content

' 获取返回数据

function post_content()

dim api_url:api_url = "https://aip.baidubce.com/rpc/2.0/nlp/v1/lexer"

dim json:json = post_https(api_url&"?charset=UTF-8&access_token="&access_token,post_data)

dim obj

set obj = parseJSON(json)

post_content = json

' 遍历解析JSON不会了 哈哈

set obj = Nothing

end function

' 获取access_token

function access_token()

dim access_token_url:access_token_url = "https://aip.baidubce.com/oauth/2.0/token?grant_type=client_credentials&client_id="&client_id&"&client_secret="&client_secret&"" ' 组合获取access_token网址

dim obj

set obj = parseJSON(post_https(access_token_url,""))

access_token = obj.access_token

set obj = Nothing

end function

' 解析json

Dim scriptCtrl

Function parseJSON(str)

If Not IsObject(scriptCtrl) Then

Set scriptCtrl = Server.CreateObject("MSScriptControl.ScriptControl")

scriptCtrl.Language = "JScript"

scriptCtrl.AddCode "Array.prototype.get = function(x) { return this[x]}var result = null"

End If

scriptCtrl.ExecuteStatement "result = " &str &""

Set parseJSON = scriptCtrl.CodeObject.result

End Function

' post获取数据函数

public function post_https(post_url,post_data)

dim https

set https = server.createobject("msxml2.xmlhttp")

with https

.open "post", post_url, false

.setrequestheader "content-type","application/json"

.send post_data

post_https = .responsebody

end with

post_https = bytestobstr(post_https,"UTF-8")

set https = nothing

end function

' 转换编码

function bytestobstr(body,cset)

dim objstream

set objstream = server.createobject("adodb.stream")

objstream.type = 1

objstream.mode =3

objstream.open

objstream.write body

objstream.position = 0

objstream.type = 2

objstream.charset = cset

bytestobstr = objstream.readtext

objstream.close

set objstream = nothing

end function

%>


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/sjk/10644987.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-10
下一篇 2023-05-10

发表评论

登录后才能评论

评论列表(0条)

保存