经典 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 数据?

使用 MVC 6 在 ASP.NET 5 中显示从 WebRequest 获取的 JSON 数据

经典 ASP 到 ASP.NET 2.0 的转换

ASP.NET Core从存储过程中获取Json的重构方法

在经典 ASP 中传递变量