Вызов API REST для извлечения данных CSV с помощью адаптера Biztalk WCF-WebHttp - PullRequest
0 голосов
/ 25 сентября 2018

Мне нужно получить некоторые данные .csv из API остальных, сопоставить их с XML и сохранить их на сервере SQL.

Карты CSV в XML уже завершены, а сервер SQL настроен иготов к приему документов XML, содержащих данные.

API REST, который я использую, является общедоступным, поэтому учетные данные не требуются.

Вот пример данных .csv с включеннымheader:

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 to XML в качестве входящей карты.

Но данные не собираются.

Я не получаю предупреждений или ошибок в журнале событий.

Когда инициируется запрос GET к URI?Есть ли способ, которым я могу назвать это вручную?

Дайте мне знать, если вам нужна дополнительная информация.

1 Ответ

0 голосов
/ 25 сентября 2018

Чтобы вызвать API, вы должны запустить его, в вашем сценарии BizTalk должен вызвать его.

Пожалуйста, следуйте приведенным ниже шагам, чтобы вызвать его

  1. Создайте получающий порт / имя местоположения получения как планировщик API или понятное имя, которое использует WCF-SQL и конфигурацию как mssql://servername//BizTalkMgmtDb?InboundId=putyouridentifier

  2. Установите привязку для интервала опроса в вашем случае24 часа (1 день)

пример опроса:

enter image description here

Теперь создайте двусторонний порт отправки с адаптером WCF-WebHTTP, как вы настроили, с помощью метода GET и поместите фильтр как BTS.Receiveportname == CreatedReceivePort и передайте через конвейер отправки и получения будут данные (CSV) сваш конвейер.

Теперь вы сможете легко получать соответствующие данные.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...