第二个链接是每隔几秒钟从 API 中提取信息。使用谷歌浏览器,您可以使用开发人员工具检查类似的内容,然后单击“网络”。然后,您可以查看发送了哪些请求,并且可以通过右键单击请求 -> 复制为 CURL 轻松复制它们。然后你会得到类似这样的东西,其中包括由 CURL 命令中的请求发送的所有标头和发布数据。这是第二个链接所调用的:
curl 'http://utilsub.lbs.ubc.ca/ion/default.aspx/GetRTxmlData' -H 'Cookie: ASP.NET_SessionId=oq0qiwuqbb3g3453jvyysvjx' -H 'Origin: http://utilsub.lbs.ubc.ca' -H 'Accept-Encoding: gzip,deflate,sdch' -H 'Host: utilsub.lbs.ubc.ca' -H 'Accept-Language: de-DE,de;q=0.8,en-US;q=0.6,en;q=0.4' -H 'User-Agent: Mozilla/5.0 (Windows NT 6.2; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/30.0.1599.101 Safari/537.36' -H 'Content-Type: application/json; charset=UTF-8' -H 'Accept: application/json, text/javascript, */*; q=0.01' -H 'Referer: http://utilsub.lbs.ubc.ca/ion/default.aspx?dgm=x-pml:/diagrams/ud/network.dgm&node=Buildings.AERL&unique_id=75660a13-5145-42d5-b661-a50f328306c7&logServerName=QUERYSERVER.UTIL2SUB&logServerHandle=327952' -H 'X-Requested-With: XMLHttpRequest' -H 'Connection: keep-alive' --data-binary $'{\'dgm\':\'x-pml:/diagrams/ud/network.dgm\',\'id\':\'75660a13-5145-42d5-b661-a50f328306c7\',\'node\':\'\'}' --compressed
API 返回包装在 JSON 中的 XML。
正如 codeSpy 所说,您可能想将 CURL 与 PHP 一起使用,您只需设置所有标头并发布数据并正确复制请求,否则 API 不会响应您的请求。