寻找一些帮助连接到该服务并返回XML。
这里是(从说明这里 ):
的输入端和继电器的状态可以通过发送该XML页面state.xml(在设置中指定或端口)到端口80的请求进行监测。 继电器可以通过发送GET请求到端口80上的相同的页面(或端口中设置指定的)来控制。 这可以通过输入命令到Web浏览器的URL行证实。
请求当前状态:HTTP:// “IP地址” /state.xml
...
如果控制密码在WebRelay-DualTM单元启用和state.xml页面通过浏览器请求,浏览器会提示用户输入密码。 如果XML请求是从另一个应用程序,而不是一个浏览器发送时,HTML请求将需要包含使用基64编码方案编码的密码。 没有密码的HTML请求头看起来是这样的:
GET /state.xml?relay1State=1&noReply=1 HTTP/1.1 (Ends with two \r\n)
与密码的HTML请求头看起来是这样的:
GET /state.xml?relay1State=1&noReply=1 HTTP/1.1(\r\n here) Authorization: Basic bm9uZTp3ZWJyZWxheQ== (Ends with two \r\n)
其中
bm9uZTp3ZWJyZWxheQ==
是用户名和口令没有一个基64编码的版本:webrelay
码:
function webRelay(){
//working url http://75.65.130.27/state.xml
var url = 'http://75.65.130.27/';
var params = encodeURIComponent('state.xml');
Logger.log(params);
var headers = {
"Authorization" : "Basic" + Utilities.base64Encode('none:webrelay')
};
var options =
{
"method" : "get",
"headers" : headers
};
var state = UrlFetchApp.fetch(url+params, options);
Logger.log('1: '+state);
Logger.log(parse(state));
}
function parse(txt) {
var doc = Xml.parse(txt, true);
}
任何帮助深表感谢。