由于我无法控制的情况,Javascript
是我唯一可用的语言选项。我是初学者,甚至不确定我是否以“推荐”方式接近问题。
简单地说,客户已经在线设置了MarkLogicDB
服务器并且给了我只读权限。我可以使用 HTTP GET协议查询服务器,以返回必须解析的XML
文档。我已经能够创建一个curl
命令来返回我需要的数据(例如下面的代码);
curl --anyauth --user USERNAME:PASSWORD \
-X GET \
http://test.com:8020/v1/documents?uri=/path/to/file.xml
以上内容返回请求的XML
文件。有人可以告诉我如何将上述内容转换为javascript
代码吗?另外,我将如何解析数据?假设我想从某个元素或属性中获取所有信息。如何实现这一目标?
对于我来说,这对于Java/.NET
来说是微不足道的,但是在阅读了大量关于Javascript的在线教程之后,我的脑袋在旋转。每个教程都讨论Web浏览器,但我在服务器环境(parse.com CloudCode)上这样做。没有涉及任何UI或HTML。对于调试,我只是阅读使用console.log()
创建的日志。
答案 0 :(得分:1)
https://parse.com/docs/cloud_code_guide#networking似乎很清楚,就此而言。
Parse.Cloud.httpRequest({
url: 'http://test.com:8020/v1/documents',
params: {
uri : '/path/to/file.xml'
},
success: function(httpResponse) {
console.log(httpResponse.text);
},
error: function(httpResponse) {
console.error('Request failed with response code ' + httpResponse.status);
}
});
但您还需要身份验证。 Parse.Cloud.httpRequest
文档不包含任何示例。如果您有该供应商的支持,询问供应商有关摘要式身份验证的信息。
如果您遇到困难,可以尝试将user
和password
添加到httpRequest
参数中,看看会发生什么。如果此堆栈的开发人员遵循XMLHttpRequest约定,则可能会有效。
供应商和现有功能的支持失败,您必须自己在JavaScript中实现身份验证。这通过生成进入请求标头的字符串来工作。这些资源应该有所帮助:
基本身份验证更容易实现,但出于安全原因,我建议使用摘要。如果您的HTTPServer不支持,请尝试更改配置。