我如何从Delphi消费oData webservice(我正在尝试与新的Bing Search Azure API进行交互)?在德尔福几乎没有这样做的信息.有一个帖子
here,但它并没有帮助解释如何从Delphi的角度来消费这样的服务.任何人都可以提供一个简单的例子吗?
解决方法
以下是使用netflix oData服务在Delphi XE中使用oData服务的一个非常简单的示例:
program oDataDemo; {$APPTYPE CONSOLE} uses SysUtils,msxml,Variants,Activex; var httpRequest: IXMLHttpRequest; oDataServiceURI: String; oDataFilter: String; xmlResults: String; begin try oDataServiceURI := 'http://odata.netflix.com/v2/Catalog/Titles()'; oDataFilter := '?$top=10'; coinitialize(nil); httpRequest := CoXMLHTTP.Create; httpRequest.open('GET',UTF8Encode(oDataServiceURI + oDataFilter),false,EmptyParam,EmptyParam); httpRequest.send(EmptyParam); xmlResults := httpRequest.responseText; WriteLn(xmlResults); except on E: Exception do Writeln(E.ClassName,': ',E.Message); end; end.