如何从Delphi使用oData webservice(我正在尝试与新的Bing Search Azure API进行交互)?在Delphi中几乎没有任何信息可以做到这一点。有一篇文章here但是从Delphi的角度来看它没有多大帮助解释如何使用这样的服务。任何人都可以提供一个简单的例子吗?
答案 0 :(得分:4)
以下是使用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.