在经典ASP页面中编写JSON,以及对Http响应的一般(错误)理解
Writing JSON in Classic ASP page, and general (mis)understanding of Http Response
我有一个经典的ASP页面(VBscript),它在服务器端生成XML,然后响应。写它。该页面根本没有客户端。
然而,我需要将其转换为JSON。因为我找不到一个ASP服务器端工作的方式(完全不同的主题),我在客户端用我找到的Javascript代码做了它,最后的文档。将它写入页面
问题是,结果是不一样的:如果之前的http响应只是一个XML,现在的响应是javascript代码,它写JSON到浏览器,而不是响应。我理解得对吗?
换句话说,如果之前我用xml作为响应,现在响应是这样的:
<script type="text/javascript">
var xmlObj = parseXml('<%=resultXml%>');
var json = xml2json(xmlObj);
document.write(json);
</script>
整个代码块由ASP通过如下方法调用:
sub writeJsonResult(resultXml)
% >
the above javascript is here
< % end sub
% >
所以,浏览器显示了JSON,但是使用它的服务没有得到它需要的RESPONSE。是否有一种方法来编写JSON作为响应?我觉得我错过了一些东西,不太明白。
服务期望得到JSON。
你给它一个HTML文档包含客户端JavaScript动态写入JSON到页面。
你需要给它实际的JSON,所以你需要想办法用ASP生成JSON
正如@Quentin指出的;
服务期望得到JSON
这意味着试图通过处理JSON客户端来解决这个问题是行不通的,因为这意味着您已经发送回text/html
HTTP响应而不是application/json
响应。这是无法回避的你必须处理XML以在服务器端构建JSON结构然后使用
Response.ContentType = "application/json"
有很多经典ASP的JSON库,有些很好,有些很棒,有些很糟糕。你只需要浏览一下,看看哪一个适合你,如果你正在寻找一个推荐,ASPJSON.com可能是最广泛使用的库(但奇怪的是,该网站目前似乎关闭了)。
如果可能的话,在生成XML的地方使用上面描述的库将其替换为JSON,其中大多数库支持直接从数据库构建JSON结构,节省了您自己从XML解析和构建JSON的时间。
的有用链接
有什么好的库解析JSON在经典ASP?[关闭]
经典ASP JSON类(网站当前关闭)
JSON对象类3.4.1 by RCDMK
- IIS动态HTTP响应标头
- 存储$http如何从$http函数(Angularjs)外部获取可访问变量中的响应
- Typescript angularjs$http获取响应类型(避免使用<any>)
- http请求使用html而不是json进行响应
- 我如何设置HTTP头“;访问控制允许起源”;用于来自thttpd web服务器的HTTP响应
- 从javaspring方法管理http.get响应
- Http响应拆分安全问题的XMLHTTPRequest/Response用例的Filter实现
- 从http获取响应管理zip
- 是浏览器在AJAX响应中自动处理的HTTP标头
- "所请求的名称已经作为不同类型的“”存在;HTTP 409响应错误
- 使用Express筛选HTTP响应
- HTTP请求使用cURL,但在浏览器中使用javascript时会得到CORS响应
- 分析angular.js中的JSONP$http.json()响应
- 使用不同参数的超级代理缓存缓存 HTTP 响应
- 如何在 http 上调用 end().服务器响应对象
- $http.post() angularjs 响应函数未按正确的顺序执行
- $http.获取和$http.JSONP未能获得Google API响应
- 流星:返回承诺's,然后再响应HTTP发布请求
- 使用正确的数组响应HTTP请求时出现问题.使用expressjs从函数内部发送结果的可能方法
- 获取响应http angular