我在makeWebRequest函数的试错上花了很多时间。使用一个非常简单的服务,它适用于JSON,但不适用XML。
var url = "http://www.broadbandmap.gov/broadbandmap/demographic/jun2014/nation";
// WORKS
Comm.makeWebRequest(url, {"format" => "json"}, {}, method(:onReceive));
// FAILS for XML with responseCode "Failed to load Error: -400"
Comm.makeWebRequest(url, {}, {}, method(:onReceive));
对于XML场景,我尝试了各种不同的选项,但总是失败。谁能举个例子?
应该支持XML吗?从我从文档中收集到的信息来看,它不是:
:responseType (Number) -响应的格式。应该是。HTTP_RESPONSE_CONTENT_TYPE_ *值。如果没有给出,系统将给出尝试首先将响应解析为JSON,然后解析为URL ENCODED。
https://developer.garmin.com/downloads/connect-iq/monkey-c/doc/Toybox/Communications.html makeWebRequest-instance_method
XML甚至从未在页面中提到过。
如果这确实是你希望使用的API(而不仅仅是一个示例),有什么理由你不能请求和处理JSON格式的响应?
http://www.broadbandmap.gov/broadbandmap/demographic/jun2014/nation?format=json