调用 REST API 以使用 Biztalk WCF-WebHttp 适配器获取 CSV 数据
Calling REST API to fetch CSV data using Biztalk WCF-WebHttp adapter
我需要从其余 API 获取一些 .csv 数据,将其映射到 XML 并将其存储在 SQL 服务器中。
CSV 到 XML 映射已经完成,SQL 服务器已设置并准备好接收包含数据的 XML 文档。
我正在使用的 REST API 是一个 public,因此不需要凭据。
这是包含 header:
的 .csv 数据示例
sekvensnummer,tidspunkt,operation,id,kommunekode,kode,oprettet,ændret,navn,adresseringsnavn,navngivenvej_id
48354673,2018-01-14T02:08:38.432Z,insert,,0306,2901,,,Hedvigsvej,Hedvigsvej,
48352674,2018-01-14T02:08:38.432Z,insert,,0201,1187,,,Bøgeholm Alle,Bøgeholm Alle,
48252675,2018-01-14T02:08:38.432Z,insert,,0225,0938,,,Stoustrædet,Stoustrædet,
48357676,2018-01-14T02:08:38.432Z,insert,,0265,0937,,,Stouvænget,Stouvænget,
48352687,2018-01-14T02:08:38.432Z,insert,,0265,0936,,,Dyssevænget,Dyssevænget,
我正在将其映射到 XML 文档,格式如下:
<ns0:Vejstykke xmlns:ns0="http://Company.Vejregister.Schemas.Vejstykke_XML">
<Data>
<sekvensnummer>48352273</sekvensnummer>
<tidspunkt>2018-01-14T02:08:38.432Z</tidspunkt>
<operation>insert</operation>
<id/>
<kommunekode>0376</kommunekode>
<vejkode>2901</vejkode>
<oprettet/>
<ændret/>
<navn>Hedvigsvej</navn>
<vejnavn>Hedvigsvej</vejnavn>
<navngivenvej_id/>
</Data>
我知道我需要使用 WCF-WebHttp 适配器来获取 csv 数据。我需要每天调用一次 API 来获取最新数据。
在 WCF-WebHttp 适配器的配置中,我需要为数据输入一个 URI。现在我使用了:
/http://dawa.aws.dk/adresser?kommunekode=0326&format=csv
在HTTP方法和URL映射中我写了:GET
接收端口设置为使用 CSV 到 XML 映射作为入站映射。
但是没有数据被提取。
我在事件日志中没有收到任何警告或错误。
何时触发对URI 的GET 请求?有没有办法可以手动调用它?
如果您需要更多信息,请告诉我。
为了调用 API 你必须触发它,在你的场景中 BizTalk 必须触发它。
请按照以下步骤触发它
Create a Receive Port / Receive location name it as API scheduler or a friendly name, which uses the WCF-SQL 和配置
mssql://servername//BizTalkMgmtDb?InboundId=putyouridentifier
根据您的情况设置轮询间隔绑定 24 小时(1 天)
示例轮询语句:
- 现在使用您配置的 WCF-WebHTTP 适配器创建一个双向发送端口,使用 GET 方法并将过滤器放置为 BTS.Receiveportname==CreatedReceivePort 并通过发送管道接收数据(CSV) 与您的管道。
现在你应该可以很容易地获取到相应的数据了。
我需要从其余 API 获取一些 .csv 数据,将其映射到 XML 并将其存储在 SQL 服务器中。
CSV 到 XML 映射已经完成,SQL 服务器已设置并准备好接收包含数据的 XML 文档。
我正在使用的 REST API 是一个 public,因此不需要凭据。
这是包含 header:
的 .csv 数据示例sekvensnummer,tidspunkt,operation,id,kommunekode,kode,oprettet,ændret,navn,adresseringsnavn,navngivenvej_id
48354673,2018-01-14T02:08:38.432Z,insert,,0306,2901,,,Hedvigsvej,Hedvigsvej,
48352674,2018-01-14T02:08:38.432Z,insert,,0201,1187,,,Bøgeholm Alle,Bøgeholm Alle,
48252675,2018-01-14T02:08:38.432Z,insert,,0225,0938,,,Stoustrædet,Stoustrædet,
48357676,2018-01-14T02:08:38.432Z,insert,,0265,0937,,,Stouvænget,Stouvænget,
48352687,2018-01-14T02:08:38.432Z,insert,,0265,0936,,,Dyssevænget,Dyssevænget,
我正在将其映射到 XML 文档,格式如下:
<ns0:Vejstykke xmlns:ns0="http://Company.Vejregister.Schemas.Vejstykke_XML">
<Data>
<sekvensnummer>48352273</sekvensnummer>
<tidspunkt>2018-01-14T02:08:38.432Z</tidspunkt>
<operation>insert</operation>
<id/>
<kommunekode>0376</kommunekode>
<vejkode>2901</vejkode>
<oprettet/>
<ændret/>
<navn>Hedvigsvej</navn>
<vejnavn>Hedvigsvej</vejnavn>
<navngivenvej_id/>
</Data>
我知道我需要使用 WCF-WebHttp 适配器来获取 csv 数据。我需要每天调用一次 API 来获取最新数据。
在 WCF-WebHttp 适配器的配置中,我需要为数据输入一个 URI。现在我使用了:
/http://dawa.aws.dk/adresser?kommunekode=0326&format=csv
在HTTP方法和URL映射中我写了:GET
接收端口设置为使用 CSV 到 XML 映射作为入站映射。
但是没有数据被提取。
我在事件日志中没有收到任何警告或错误。
何时触发对URI 的GET 请求?有没有办法可以手动调用它?
如果您需要更多信息,请告诉我。
为了调用 API 你必须触发它,在你的场景中 BizTalk 必须触发它。
请按照以下步骤触发它
Create a Receive Port / Receive location name it as API scheduler or a friendly name, which uses the WCF-SQL 和配置
mssql://servername//BizTalkMgmtDb?InboundId=putyouridentifier
根据您的情况设置轮询间隔绑定 24 小时(1 天)
示例轮询语句:
- 现在使用您配置的 WCF-WebHTTP 适配器创建一个双向发送端口,使用 GET 方法并将过滤器放置为 BTS.Receiveportname==CreatedReceivePort 并通过发送管道接收数据(CSV) 与您的管道。
现在你应该可以很容易地获取到相应的数据了。