经典 ASP 使用 JSON 从 HTTP 获取参数
Posted
技术标签:
【中文标题】经典 ASP 使用 JSON 从 HTTP 获取参数【英文标题】:Classic ASP fetch parameters from HTTP using JSON 【发布时间】:2016-10-14 10:54:30 【问题描述】:我有一个使用经典 asp 编写的网站,我需要创建一个页面,该页面将接收来自第三方网站的回调,该网站将使用 JSON 发送三个参数。然后我需要将这些值存储在数据库中。
我没有使用 JSON 的经验,需要一种方法来捕获我的 asp 页面中的参数。
任何人都有 JSON 方面的经验。
谢谢
【问题讨论】:
你可以看这里; ***.com/questions/11219/… 经典 ASP 支持 javascript 作为 VBScript 作为服务器端语言的替代方案。如果我正在处理 JSON,那么我发现这样做比使用 aspjson 库***.com/questions/30538292/… 更容易 【参考方案1】:我使用 http://www.aspjson.com/ 将 Classic ASP 与 JSON 结合使用。
我从上面的网站下载了代码,并将其作为包含文件放在我的页面上:
<!--#INCLUDE file="../dist/asp/aspJSON.asp" -->
然后我可以解析 JSON 响应并为其分配变量。
我主要将它用于使用 Mandrill 电子邮件 API 发送电子邮件。
API 以 JSON 格式发送响应。
示例响应:
[
"email": "recipient.email@example.com",
"status": "sent",
"reject_reason": "hard-bounce",
"_id": "abc123abc123abc123abc123abc123"
]
向 Mandrill 发送数据...
vurl = "https://mandrillapp.com/api/1.0/messages/send.json"
set xmlhttp = CreateObject("MSXML2.ServerXMLHTTP.6.0")
xmlhttp.open "POST", vurl, false
xmlhttp.setRequestHeader "Content-type","application/json"
xmlhttp.setRequestHeader "Accept","application/json"
'send JSON data to the API
xmlhttp.send oJSON.JSONoutput()
Mandrill 然后发送 JSON 响应 - 例如
[
"email": "recipient.email@example.com",
"status": "sent",
"reject_reason": "hard-bounce",
"_id": "abc123abc123abc123abc123abc123"
]
然后我可以使用:
'process the response JSON data
vAnswer = xmlhttp.responseText
我必须从 JSON 响应的开头和结尾删除方括号:
vAnswer = replace(vAnswer,"[","")
vAnswer = replace(vAnswer,"]","")
然后对数据进行处理:
'load the incoming JSON data using aspJSON
Set oJSON = New aspJSON
'Load JSON string
oJSON.loadJSON(vAnswer)
'set variable values from the incoming data
json_email = ap(oJSON.data("email"))
json_status = ap(oJSON.data("status"))
json_reject_reason = ap(oJSON.data("reject_reason"))
json_id = ap(oJSON.data("_id"))
您将如何做取决于您正在使用的 JSON 数据的结构。
【讨论】:
以上是关于经典 ASP 使用 JSON 从 HTTP 获取参数的主要内容,如果未能解决你的问题,请参考以下文章
经典的asp json ASP-Xtreme遍历json对象
如何从 ASP.net MVC 程序中获取纯 c# 程序中的 JSON 数据?